當前的分布式微服務云架構平臺使用Maven構建申窘,所以common-service的通用服務按照maven構建獨立的系統(tǒng)服務街夭,結構如下:
particle-commonservice: spring cloud 系統(tǒng)服務根項目锤岸,所有服務項目的根依賴。
particle-commonservice-admin: spring cloud/boot的微服務管理、監(jiān)控平臺(里面會集成很多的組件服務項目)
particle-commonservice-apigateway:API網關通用服務項目,所有的請求首先會經過這個網關件甥。有點類似于前端控制器模式,也有點類似于 Facade模式哼拔。由于所有的請求會先經過這個 api 網關引有,所以可以在這里做權限控制,安全倦逐,負載均衡譬正,請求分發(fā),監(jiān)控等等檬姥。以下的一張圖片是從網上找的曾我,方便大家理解:
particle-commonservice-cache:針對于分布式緩存提供服務化項目,封裝分布式緩存redis等健民。
particle-commonservice-config:?提供獨立的微服務配置管理項目項目抒巢。配置管理工具包,讓你可以把配置放到遠程服務器秉犹,集中化管理集群配置虐秦,目前支持本地存儲平酿、Git以及Subversion。
particle-commonservice-erueka:?提供獨立的微服務服務發(fā)現悦陋、注冊管理平臺蜈彼。云端服務發(fā)現,一個基于 REST 的服務俺驶,用于定位服務幸逆,以實現云端中間層服務發(fā)現和故障轉移。
particle-commonservice-mq:?提供獨立的消息中間件服務平臺暮现。包括對流行的阿里rocketmq还绘、rabbit mq、kafka分布式消息中間件的服務管理(這里集成了多種方案栖袋,供使用者選擇)拍顷。
particle-commonservice-sso:
提供統(tǒng)一用戶登錄、認證單點登錄平臺塘幅。使用第三方OAuth2.0的解決方案昔案,通過組織在資源擁有者和HTTP服務商之間的被批準的交互動作代表用戶,允許第三方應用代表用戶獲得訪問的權限电媳。同時為Web應用踏揣,桌面應用和手機提供統(tǒng)一認證登錄服務。
particle-commonservice-turbine:是聚合服務器發(fā)送事件流數據的一個工具匾乓,用來監(jiān)控集群下hystrix的metrics情況捞稿,提供獨立的服務項目。
particle-commonservice-zipkin:提供獨立的服務項目拼缝,為SpringCloud應用實現了一種分布式追蹤解決方案娱局。分布式跟蹤系統(tǒng)數據流主要分為三個步驟:采集、發(fā)送和落盤分析咧七,Zipkin官網給出的設計圖衰齐,方便大家理解:
從現在開始,我這邊會將近期研發(fā)的spring cloud微服務云架構的搭建過程和精髓記錄下來猪叙,幫助更多有興趣研發(fā)spring cloud框架的朋友娇斩,大家來一起探討spring cloud架構的搭建過程及如何運用于企業(yè)項目仁卷。?