1 微服務
1.1 思想
開發人員自己測試、部署和運維自己編寫的代碼,即自己負責構建生命周期的全部。
1.2 Spring Boot
提供服務化的能力,即把容器、服務所需依賴和服務一起打包成一個jar包,直接運行jar便部署了一個服務。
Spring Boot可以把Spring的一切都納入進來,比如Spring MVC、Spring Data、Spring Batch、Spring Security等。
1.3 Spring Cloud
提供雲平台服務化的能力。提供服務發現、集中式配置,集成了智能路由和負載均衡、斷路器等組件。
使用注解實現配置,使用jar包實現部署,使我們開發的服務具有很好的伸縮性和靈活性。
2 容器化
1)極簡式
使用可復用的鏡像,鏡像分層存儲了軟件及軟件所需的各層依賴與配置。
鏡像簡化了多種環境下的統一配置,為持續集成帶來了一致性的測試環境,為運維提供了跨平台的統一部署能力。
容器的輕量性,為服務提供了快速擴容和快速回收的可伸縮性。
2)不變式
不要試圖修改容器,可以修改容器的配置文件。
容器負責計算,主機負責存儲容器配置和數據。容器掛死后,可以啟動一個新容器代替前者,數據不會丟失。
3)收斂式
一個容器一個職責,完成后就關閉。
4)容器可執行
5)可以容器化微服務
