一、Dubbo简介
二、Dubbo架构


|
节点
|
角色名称
|
|
Provider
|
暴露服务的服务提供方
|
|
Consumer
|
调用远程服务的服务消费方
|
|
Registry
|
服务注册与发现的注册中心
|
|
Monitor
|
统计服务的调用次数和调用时间的监控中心
|
|
Container
|
服务运行容器
|
三、Zookeeper
1、zookeeper安装
2、命令:
四、项目中的一些理解:
1、创建项目时,服务的提供者与消费者都需要在对应的xml文件中向注册中心进行注册:
例<dubbo:applicationname="dubbodemo_provider" />,名称要与服务的项目名一致
2、服务的提供者需要单独注册 协议和端口号(默认为20880)
例:<dubbo:protocol name="dubbo" port="20881" />
3、服务的提供者与消费者都需要对应的类进行扫描:
例:<dubbo:annotation package="com.lalalal.service.impl" /> ---服务的提供者
例:<dubbo:annotation package="com.lalal.controller" /> ---服务的消费者
4、服务的提供者与消费者都需要连接服务注册中心zookeeper
<dubbo:registry address="zookeeper://192.xxx.xxx.xxx:2181"/>----192.xxx.xxx.xxx是虚拟机的ip地址,2181是固定的端口
5、在服务的消费方调用服务的提供方时: 注入相对应的对象时需要用到@Reference这个注解,在配置文件中配置也行,但推荐注解
6、负载均衡:
负载均衡(Load Balance):其实就是将请求分摊到多个操作单元上进行执行,从而共同完成工作任
务。
在集群负载均衡时,Dubbo 提供了多种均衡策略(包括随机、轮询、最少活跃调用数、一致性
Hash),缺省为random随机调用。
7、Dubbo解决无法发布事务:
1、需要将默认的jdk代理改为cglib代理
2、在service注解中加入interfaceClass属性,值为service接口.class,
作用是指定服务的接口类型
Apache Dubbo是一个高性能的Java RPC框架,它提供了面向接口的远程方法调用、智能容错和负载均衡等功能。在项目中,服务提供者和消费者需要向注册中心Zookeeper注册并订阅服务。Zookeeper用于服务的注册与发现,通过配置可以在服务消费者和提供者之间实现负载均衡。此外,Dubbo还支持多种负载均衡策略,并能解决事务发布问题,通过设置可以将默认的jdk代理改为cglib代理并指定服务接口类型。
6677

被折叠的 条评论
为什么被折叠?



