EJBgit |
Dubbogithub |
SpringCloudweb |
|
開發方spring |
標準由oracle開發緩存 |
阿里安全 |
Spring社區服務器 |
最新版本及時間oracle |
3.1,2009年負載均衡 |
2.5.3,2012年10月23號maven |
Finchley.SR1,2018年8月1號 |
維護狀態 |
不活躍,3.2只是草案 |
再也不繼續維護 |
活躍 |
互聯網應用案例 |
暫未發現 |
阿里、京東、噹噹等 |
中國聯通 華爲 |
基於協議 |
Rmi |
可選,默認dobbo |
http |
可用的語言 |
Java |
Java |
全部語言 |
分佈式事物 |
是 |
否 |
否 |
無狀態部署 |
否 |
是 |
是 |
服務器治理 |
服務發現、負載均衡 |
服務發現、服務路由、服務負載均衡、服務列表、服務分組、服務依賴管理、服務權重、服務受權、服務直連、上下文隱式傳參、分組聚合、結果緩存 |
除dubbo有的外:服務網關、斷路器、服務跟蹤、消息總線、批量任務 |
分佈式配置 |
無 |
第三方 |
有 |
基於的web容器 |
Jboss |
Tomcat內嵌 |
Tomcat內嵌 |
單元測試 |
支持 |
支持 |
支持 |
性能對比:(引用網上一張圖)
SRx=Service Release x:服務發佈版,正式版本
Finchley.SR1 (2.0.1)於2018年8月1日發佈,有廠商已經從1.x升級過來,1.x和2.x的組件對好比下圖:
其中,相比版本2.0.0,版本2.0.1組件版本以下:
SpringCloud 2.0.1相比1.x主要配置區別以下:
(1)SpringBoot從1.x(最新發布版1.5.17 GA,發佈日2018.10.16)升級爲2.x(最新發布版爲2.0.6GA,發佈日2018.10.16),SpringCloud 2.x必須基於SpringBoot2.x,SpringCloud1.x必須基於SpringBoot1.x
(2)Eureka服務器依賴org.springframework.cloud須要變動
<artifactId>spring-cloud-starter-eureka-server</artifactId>變爲:
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
(3)Eureka客戶端依賴org.springframework.cloud須要變動
<artifactId>spring-cloud-starter-eureka</artifactId>變爲:
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
(4)註冊中心IP地址配置
${spring.cloud.client.ipAddress}變爲:
${spring.cloud.client.ip-address}
(5)安全加密Spring Security的用戶密碼配置在security前面加spring
spring:
security:
user:
name:
password:
(6)安全加密Spring Security默認開啓CSRF防護(可能致使兩個註冊中心沒法相互註冊),使用:
http.csrf().ignoringAntMatchers("/eureka/**");
(7)安全加密Spring Security模塊致使配置中心沒法加解密
由於認證方式有改變,能夠改回 basic auth認證方式
(8)maven須要修改run.profiles爲spring-boot.run.profiles
spring-boot:run -Drun.profiles= …改成:
spring-boot:run -Dspring-boot.run.profiles=
(9)Spring Cloud Gateway代替了Spring Cloud Zuul,主要緣由是Zuul 2.0沒有及時開源(後來Netfilx已經開源)。
SpringCloud源碼位置: