Dubbox是一种分布式的框架,前身是阿里的dubbo的开源项目,本身为了解决soa的问题,致力于提供高性能和透明化的RPC远程服务的调用方案,以及soa的服务的治理方案,简单点:就是服务调用的东东,远程服务调用的分布式的框架
作用:
一般的情况下,一个服务器上的服务调用另一个服务器上的服务,需要知道另一个服务器的ip+端口号,现在利用dubbox,我们可以将两个服务都注册在dubbox上,这样双方不相识,但是可以调用,降低了耦合度
Dubbox的结构图
- Registry注册中心
- Provider服务的提供方
- Consumer服务的消费方
- Monitor统计统计服务的调用次数和调用时间的监控中心(两个是否是健康状态,或者宕机)
- Container服务运行容器
每个模块之间的运行的流程(按照结构图的流程走)
- 启动提供方的服务
- 启动时在注册中心注册信息(注册中心形成提供方ip列表)
- 消费方启动订阅服务,获得注册中心的信息(因为消费方不需要向注册中心注册信息)
- 注册中心向消费方推送ip列表
- 随机调用(负载均衡算法)一个服务的地址,失败后重试另一个地址
- 监控中心监控