Dubbo
Dubbo是一个分布式服务框架,致力于提供高性能和透明化的rpc远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架。
Dubbo架构图:
节点角色说明:
Provider:暴露服务的服务提供方
Consumer:调用远程服务的服务消费方
Registry:服务注册与发现的注册中心
Monitor:统计服务的调用次调和调用时间的监控中心
Container:服务运行容器
调用关系说明:
1、服务提供者在启动时,向注册中心注册自己提供的服务
2、服务消费者在启动时,向注册中心订阅
3、注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长链接推送变更数据给消费者
4、服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选一台调用
5、服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心
Dubbo是资源调度和治理中心的管理工具
分布式服务架构:当垂直应用 越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用更快速的响应多变的市场需求。
Dubbo类似于webservice的关于系统之间通信的框架,并可以统计和管理服务之间的调用情况。。
(服务被谁调用了,调用的次数是如何,以及服务的使用状况)。
zooKeeper的介绍:注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,压力较小(发送相关的信息给zookeeper)
zookeeper是Apacahe Hadoop的子项目,是一个树型的目录服务,支持变更推送,适合作为dubbo服务的注册中心,工业强度较高,稳定性好。
服务