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