微服務Springcloud超詳細教程+實戰(四)
阿新 • • 發佈:2018-12-12
如在文件中遇到什麼問題請聯絡作者 QQ:1172796094
本人正在找深圳Java實習工作,求大佬帶飛
——————————————————————————————————————
初始SpringCloud
微服務是一種架構方式,最終肯定需要技術架構去實施。
微服務的實現方式很多,但是最火的莫過於Spring Cloud了。為什麼?
- 後臺硬:作為Spring家族的一員,有整個Spring全家桶靠山,背景十分強大。
- 技術強:Spring作為Java領域的前輩,可以說是功力深厚。有強力的技術團隊支撐,一般人還真比不了
- 群眾基礎好:可以說大多數程式設計師的成長都伴隨著Spring框架,試問:現在有幾家公司開發不用Spring?SpringCloud與Spring的各個框架無縫整合,對大家來說一切都是熟悉的配方,熟悉的味道。
- 使用方便:相信大家都體會到了SpringBoot給我們開發帶來的便利,而SpringCloud完全支援SpringBoot的開發,用很少的配置就能完成微服務框架的搭建
簡介
SpringCloud是Spring旗下的專案之一,官網地址:http://projects.spring.io/spring-cloud/
Spring最擅長的就是整合,把世界上最好的框架拿過來,整合到自己的專案中。
SpringCloud也是一樣,它將現在非常流行的一些技術整合到一起,實現了諸如:配置管理,服務發現,智慧路由,負載均衡,熔斷器,控制匯流排,叢集狀態等等功能。其主要涉及的元件包括:
netflix
- Eureka:註冊中心
- Zuul:服務閘道器
- Ribbon:負載均衡
- Feign:服務呼叫
- Hystrix:熔斷器
以上只是其中一部分,架構圖:
版本
SpringCloud的版本命名比較特殊,因為它不是一個元件,而是許多元件的集合,它的命名是以A到Z的為首字母的一些單片語成:
我們在專案中,會是以Finchley(2.0)的版本。
其中包含的元件,也都有各自的版本,如下表:
Component元件 | Edgware.SR3(sp1.5) | Finchley.RC1(sp2.0) | Finchley.BUILD-SNAPSHOT |
---|---|---|---|
spring-cloud-aws | 1.2.2.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-bus | 1.3.2.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-cli | 1.4.1.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-commons | 1.3.3.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-contract | 1.2.4.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-config | 1.4.3.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-netflix | 1.4.4.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-security | 1.2.2.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-cloudfoundry | 1.1.1.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-consul | 1.3.3.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-sleuth | 1.3.3.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-stream | Ditmars.SR3 | Elmhurst.RELEASE | Elmhurst.BUILD-SNAPSHOT |
spring-cloud-zookeeper | 1.2.1.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-boot | 1.5.10.RELEASE | 2.0.1.RELEASE | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-task | 1.2.2.RELEASE | 2.0.0.RC1 | 2.0.0.RELEASE |
spring-cloud-vault | 1.1.0.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-gateway | 1.0.1.RELEASE | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
spring-cloud-openfeign | 2.0.0.RC1 | 2.0.0.BUILD-SNAPSHOT |
接下來,我們就一一學習SpringCloud中的重要元件。
版本區別
- snapshot:此jar包沒有經過測試,如果遇到bug,不要驚訝
- RC:此jar包經過了充分測試,但是可能還有很多bug
- beta:上線前的測試版本,
- release:正式版,