SpringCloud是一系列框架的有序集合。利用SpringBoot的開發(fā)模式簡化了分布式系統(tǒng)基礎(chǔ)設(shè)施的開發(fā),如服務(wù)發(fā)現(xiàn)、注冊、配置中心、消息總線、負載均衡、斷路器、數(shù)據(jù)監(jiān)控等(這里只簡單的列了一部分),都可以用SpringBoot的開發(fā)風格做到一鍵啟動和部署。SpringCloud將目前比較成熟、經(jīng)得起實際考驗的服務(wù)框架組合起來,通過SpringBoot風格進行再封裝,屏蔽掉了復雜的配置和實現(xiàn)原理,最終整合出一套簡單易懂、易部署和易維護的分布式系統(tǒng)架構(gòu)平臺。
SpringCloud的子項目,大致可分成兩類:
一類是對現(xiàn)有成熟框架SpringBoot的封裝和抽象,也是數(shù)量最多的項目;
第二類是開發(fā)了一部分分布式系統(tǒng)的基礎(chǔ)設(shè)施的實現(xiàn),如SpringCloudStream就是kafka,ActiveMQ這樣的角色。開發(fā)人員進行微服務(wù)的實踐,第一類子項目就已經(jīng)足夠使用,如:
SpringCloudNetflix
是對Netflix開發(fā)的一套分布式服務(wù)框架的封裝,包括服務(wù)的發(fā)現(xiàn)和注冊,負載均衡、斷路器、REST客戶端、請求路由等。
SpringCloudConfig
將配置信息中央化保存,配置SpringCloudBus可以實現(xiàn)動態(tài)修改配置文件。
SpringCloudBus
分布式消息隊列,是對Kafka,MQ的封裝。
SpringCloudSecurity
對SpringSecurity的封裝,并能配合Netflix使用。
SpringCloudZookeeper
對Zookeeper的封裝,使之能配置其它SpringCloud的子項目使用。
SpringCloudEureka
SpringCloudEureka是SpringCloudNetflix微服務(wù)套件中的一部分,它基于NetflixEureka做了二次分裝,主要負責完成微服務(wù)架構(gòu)中的服務(wù)治理功能。
SpringCloud為未來互聯(lián)網(wǎng)企業(yè)提供分布式基礎(chǔ)設(shè)施解決方案。同時,隨著近幾年微服務(wù)架構(gòu)和Docker容器概念的火爆,也會讓SpringCloud在未來越來越“云”化的軟件開發(fā)風格中立有一席之地,尤其是在目前五花八門的分布式解決方案中提供了標準化的、全站式的技術(shù)方案,有效推進服務(wù)端軟件系統(tǒng)技術(shù)水平提升。
從現(xiàn)在開始,我這邊會將近期研發(fā)的springcloud微服務(wù)云架構(gòu)的搭建過程和精髓記錄下來,幫助更多有興趣研發(fā)springcloud框架的朋友,大家來一起探討springcloud架構(gòu)的搭建過程及如何運用于企業(yè)項目。源碼來源