微服务(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