简介:
dobbo + zookeeper:dobbo负责分布式RPC框架,zookeeper负责注册中心
一、dubbo的工作原理:
1.Container:dubbo的服务容器
2.服务容器在启动的时候,负责加载,服务提供者
3.服务提供者在启动的时候,会将自己能提供的服务信息,注册到注册中心
4.服务消费者会从注册中心订阅,它所需要的这些服务,然后注册中心会把消费者所需要的地址列表,返回给他
5.如果提供者服务有变更,注册中心会把变更以长连接的方式,推给消费者
6.所以消费者才会找到提供者的位置,以负载均衡机制,来调用服务,如果调用失败,会另一个服务提供者(Container),来调用,值到调用成功
7.还会有监控中心,每分钟获取调用次数和调用时间
服务
二、dubbo的代码实现
1).建立一个提供类
1.引入dubbo和zkclient的依赖
2.配置dubbo的扫描包和注册中心地址
3.用dubbo的@Service类,将业务的实现类发布出去
2)建立一个消费者
1.同样的引入dubbo和zookeeper依赖
2.同样的在properties写入相关配置
3.把提供者的接口,在消费者的对应类中,也建立一个,这样才能调用该接口,不然,只能在pom文件中,依赖于提供者包
4.@Reference来引用提供者的接口,这个注解,会引入这个全类名,看谁往注册中心,注册了这个全类名的服务