21

双剑合璧的开源项目 Kitty-Cloud

 4 years ago
source link: https://mp.weixin.qq.com/s/6Hphe-Ew948NjdOlItrdaw
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

项目地址

https://github.com/yinjihuan/kitty-cloud

背景

做这个项目主要是想将个人的一些经验通过开源的形式进行输出,不一定能帮到所有人,有感兴趣的朋友可以关注学习下。

项目主要分为三大块:

  • Kitty 基础框架

基础框架基于Spring Cloud & Spring Cloud Alibaba 进行封装,内置了 Cat 监控等功能,将框架的操作进行统一封装和版本管理,方便快速构建微服务架构。让业务开发人员更关注于业务本身的开发工作。

  • Kitty Cloud 后端

使用Kitty基础框架搭建的微服务架构,业务方向是做一个技术社区。比如发文章,评论,点赞等功能。

  • Kitty Cloud 前端(待开发)

前端还没开始,等后端做完后会开始做前端,应该会采用Vue实现。

后端技术栈

Kitty:Spring Cloud & Spring Cloud Alibaba 基础框架,内置了 Cat 监控,互联网公司落地 Spring Cloud 架构必备。

Spring Cloud:Spring 微服务全家桶。

Spring Cloud Alibaba:致力于提供微服务开发的一站式解决方案。

Sentinel:把流量作为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

Nacos:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

Dubbo:Apache Dubbo™ 是一款高性能 Java RPC 框架。

Cat:基于 Java 开发的实时应用监控平台,为美团点评提供了全面的实时监控告警服务。

MyBatis-Plus:MyBatis的增强版。

Spring Data MongoDB:Spring 中对MongoDB操作的客户端框架。

JetCache:基于Java的缓存系统封装,提供统一的API和注解来简化缓存的使用。

ElasticSearch:ElasticSearch 是一个开源,分布式,RESTful搜索引擎。

项目模块

  • kitty-cloud-common:公共模块,通用的工具类

  • kitty-cloud-user:用户服务

  • kitty-cloud-article:文章服务

  • kitty-cloud-comment:评论服务

  • kitty-cloud-gateway:Web网关

  • kitty-cloud-search:搜索服务

  • kitty-cloud-job:定时任务

  • 开发中。。。。。。

项目子模块划分

- kitty-cloud-article
   - kitty-cloud-article-api -- API接口定义,RPC/REST
   - kitty-cloud-article-biz -- 业务逻辑
   - kitty-cloud-article-provider -- API接口实现,RPC/REST暴露服务

依赖关系:

uiI36zI.png!web

包划分

- kitty-cloud-article-api
   - fallback -- Feign/Dubbo 熔断回退默认实现
   - request -- 请求参数
   - response -- 响应对象
   - service -- Http/Rpc API接口定义
- kitty-cloud-article-biz
   - bo -- 业务层响应对象
   - convert -- 实体类转换
   - dao -- 数据库操作
   - dataobject -- 数据对象(MySql)
   - document -- 文档对象(MongoDB,ElasticSearch)
   - enums -- 枚举
   - param -- 业务层接收上层的参数
   - manager -- 三方操作管理(RPC/Http/缓存)
       - fallback
	      - dubbo -- dubbo自定义回退逻辑(替换默认回退逻辑)
	      - feign -- feign自定义回退逻辑(替换默认回退逻辑)
   - service -- 业务处理
- kitty-cloud-article-provider
   - convert -- 实体类转换
   - service -- Http/Rpc API接口实现,暴露服务
   - KittyCloudArticleProviderApp.java -- Spring Boot 启动类

感兴趣的可以加个关注哦!https://github.com/yinjihuan/kitty-cloud

热文推荐

围观:基于事件机制的内部解耦之心路历程

为我开发的API添加华丽的外衣

技术人的副业之道

RedisTemplate:我不背锅,是你用错了

得亏了它,我才把潜藏那么深的Bug挖出来

惊讶! 缓存刚Put再Get居然获取不到?

jMjIJ3v.jpg!webvAjYjmU.jpg!web

UjmyInZ.jpg!web

如有收获,点个在看,诚挚感谢


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK