自己总结了一张流程图
大致描述了一下请求在各个组件中是怎样流转的,各个组件又发挥了什么作用
微服务架构相关的一些理论备忘
- 实现微服务架构要解决的一些问题
微服务如何通讯?
1)首先我们要考虑通讯是一对一还是一对多的,一对一就是请求响应模式,最常见。一对多就是发布订阅/发布异步响应,比如滴滴打车就是一个一对多的关系,用户发出消息,很多的司机都能接收到这个消息。
从通讯协议角度考虑
一对一:REST API (http)
一对多:RPC (dubbo motan dubbox grpc thrift)
2) 微服务如何发现彼此?
服务发现的本质是服务调用者如何知道服务的提供者的IP与端口号。
3)微服务怎么部署?更新?扩容?
doker k8s 等,就是解决服务数量很多,服务器不好维护的缺点。--------------------****** - Spring Cloud包含的重要的组件,他们如何解决这些问题的
常见的微服务框架:
- 服务的注册和发现中心(Spring Cloud Eureka;Dubbo;Consul)
- 服务消费者便出现(rest+ribbon)
- ribbon的服务消费者feign
- 断路器ÿ