Dubbo学习目录Dubbo学习目录
作用:提供服务自动注册、自动发现等有效的服务治理方案
Dubbo架构图
提供商:提供商、服务发布者
消费者:消费者、呼叫方
容器:依赖于dubbo容器、Spring容器
注册:注册中心,Container启动后,在所有可以提供的服务的列表中注册注册
监视器:侦听器
虚线均为异步访问,实线均为同步访问
蓝色虚线:全部在启动时完成的功能
红色虚线(实线) :都是运行中执行的功能
的所有角色都在另一台服务器上,因此必须遵循特定的协议
角色:告诉Consumer提供哪些服务和服务
运行原理
)1)启动容器,相当于启动了Dubbo的视频
)2)启动后,返回歌曲注册中心注册,注册所有可能提供的服务列表
)3) Consumer启动后,在Registry中获取服务列表和Provider的地址,进行kldnht
)4)如果提供商有修改,注册中心向Consummer发送消息,使用观察者设计模型
公式
)5)根据获取的提供者地址实际调用提供者内的功能,在consummer端使用代理设计模型创建提供者端类的代理对象。 通过代理对象获取提供程序中的真正功能,并起到保护提供程序真正功能的作用。
) Consumer和Provider每隔一分钟向监视器发送一次统计信息。 统计信息包括访问次数、频率等。
http://www.Sina.com/http://www.Sina.com /
好处:支持网络群集
缺点:稳定性受限于zookeeper
redis注册中心:
优点:性能高(内存型数据库)
缺点:对服务器的环境要求很高
Dubbo注册中心
好处:面中心化,不需要额外设立注册中心
缺点:建议在该机房(局域网)内使用
Zookeeper:
适合测试环境,不支持集群
Zookeeper :分布式协调组件本质上是软件
一般功能:
发布订阅功能,将zookeeper作为注册中心的原因
分布式/群集管理功能
用Java语言编写
Dubbo支持的协议 Multicast:
Dubbo官方推荐的协定
本质:使用NIO和线程池进行处理。
缺点:大文件传输时文件传输可能失败。
Simple:
JDK提供的协议,远程方法调用协议
缺点:偶尔连接失败。
好处:JDK本机、不需要其他配置(jar部署) ) ) ) ) ) ) ) )。
1.Dubbo
基于好处:http协议,http请求支持。
缺点:需要额外引入jar,短连接时性能低