雙劍合璧的開源專案Kitty-Cloud

猿天地發表於2020-04-04

專案地址

github.com/yinjihuan/k…

背景

做這個專案主要是想將個人的一些經驗通過開源的形式進行輸出,不一定能幫到所有人,有感興趣的朋友可以關注學習下。

專案主要分為三大塊:

  • 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暴露服務
複製程式碼

依賴關係:

圖片

包劃分

- 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 啟動類
複製程式碼

感興趣的可以加個關注哦!github.com/yinjihuan/k…

關於作者:尹吉歡,簡單的技術愛好者,《Spring Cloud微服務-全棧技術與案例解析》, 《Spring Cloud微服務 入門 實戰與進階》作者, 公眾號 猿天地 發起人。

感興趣的可以關注下我的微信公眾號 猿天地,更多技術文章第一時間閱讀。我的GitHub也有一些開源的程式碼 github.com/yinjihuan

雙劍合璧的開源專案Kitty-Cloud

相關文章