更新時間:2021-06-23 16:36:46 來源:動力節點 瀏覽3189次
2008年以后,國內互聯網行業飛速發展,我們對軟件系統的需求已經不再是過去”能用就行”這種很low的檔次了,像搶紅包、雙十一這樣的活動不斷逼迫我們去突破軟件系統的性能上限,傳統的IT企業”能用就行”的開發思想已經不能滿足互聯網高并發、大流量的性能要求。系統架構走向分布式已經是服務器開發領域解決該問題唯一的出路,然而分布式系統由于天生的復雜度,并不像開發單體應用一樣把框架一堆就能搞定,因此各大互聯網公司都在投入技術力量研發自己的基礎設施。這里面比較有名的如阿里的開源項目dubbo,Netflix開發的一系列服務框架。在這種“百花齊放”、重復造輪子的狀況下,必然要出現一種統一的標準來簡化分布式系統的開發,Spring Cloud應運而生。
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的開發便利性巧妙地簡化了分布式系統基礎設施的開發,如服務發現注冊、配置中心、消息總線、負載均衡、斷路器、數據監控等,都可以用Spring Boot的開發風格做到一鍵啟動和部署。Spring并沒有重復制造輪子,它只是將目前各家公司開發的比較成熟、經得起實際考驗的服務框架組合起來,通過Spring Boot風格進行再封裝屏蔽掉了復雜的配置和實現原理,最終給開發者留出了一套簡單易懂、易部署和易維護的分布式系統開發工具包。
Spring Cloud正是對Netflix的多個開源組件進一步的封裝而成,同時又實現了和云端平臺,和Spring Boot開發框架很好的集成。
Spring Cloud是一個相對比較新的微服務框架,2016年才推出1.0的release版本.雖然Spring Cloud時間最短,但是相比Dubbo等RPC框架,Spring Cloud提供的全套的分布式系統解決方案。
Spring Cloud為開發者提供了在分布式系統(配置管理,服務發現,熔斷,路由,微代理,控制總線,一次性token,全居瑣,leader選舉,分布式session,集群狀態)中快速構建的工具,使用Spring Cloud的開發者可以快速的啟動服務或構建應用、同時能夠快速和云平臺資源進行對接。
Spring Cloud的子項目,大致可分成兩類,一類是對現有成熟框架”Spring Boot化”的封裝和抽象,也是數量最多的項目;第二類是開發了一部分分布式系統的基礎設施的實現,如Spring Cloud Stream扮演的就是kafka,ActiveMQ這樣的角色。對于我們想快速實踐微服務的開發者來說,第一類子項目就已經足夠使用,如:Spring Cloud Netflix,是對Netflix開發的一套分布式服務框架的封裝,包括服務的發現和注冊,負載均衡、斷路器、REST客戶端、請求路由等。該項目是Spring Cloud的子項目之一,主要內容是對Netflix公司一系列開源產品的包裝,它為Spring Boot應用提供了自配置的Netflix OSS整合。
通過一些簡單的注解,開發者就可以快速的在應用中配置一下常用模塊并構建龐大的分布式系統。它主要提供的模塊包括:服務發現(Eureka),斷路器(Hystrix),智能路由(Zuul),客戶端負載均衡(Ribbon)等。
Spring Cloud作為第二代微服務的代表性框架,已經在國內眾多大中小型的公司有實際應用案例。許多公司的業務線全部擁抱Spring Cloud,部分公司選擇部分擁抱Spring Cloud。例如,拍拍貸資深架構師楊波老師就根據自己的實際經驗以及對Spring Cloud的深入調研,并結合國內一線互聯網大廠的開源項目應用實踐結果,認為Spring Cloud技術棧中的有些組件離生產級開發尚有一定距離,最后提出了一個可供中小團隊參考的微服務架構技術棧,又被稱為“中國特色的微服務架構技術棧1.0”:
以上就是動力節點小編介紹的"線程的基本概念",希望對大家有幫助,想了解更多可查看Spring Cloud教程技術文檔,如有疑問,請在線咨詢,有專業老師隨時為您服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習