微服務(microservice)將各功能細分成一個個服務,符合單一功能原則。微服務之間通過遠程調用(RPC),springCloud爲服務之間通信提供一整套解決方案,基於springCloud開發的微服務,很方便的在docker,Paas中部署,主要包括:
1. 配置中心 config Server
可使用git或本地文件系統存儲微服務的配置文件,默認爲git
2. 服務發現 discovery
基於Netflix OSS的Eureka,包括Eureke Server和Eureke Client,主要用於微服務之間通信。
3. 路由網關 route gateway
對外提供一個統一的接口,外部請求只需要訪問一個地址,路由網關會自動的將該請求路由到註冊中心上的服務。SpringCloud通過Zuul提供路由代理
4. 負載均衡
通過ribbon,feign
5. 斷路器 Circuit beaker
基於Netflix的Hystrix