spring boot+dubbo+zookeeper

 dubbo-admin的安装

dubbo-admin官网:https://github.com/apache/dubbo-admin

需要安装jdk、maven、Node.js和zookeeper,并启动zookeeper服务 

我安装最新Node.js的19版本启动【dubbo-admin-ui】会报错,改成安装16版本即可:https://wwf.lanzouw.com/iyQwO0esl5ed

 

1、dubbo-admin官网下载的压缩包解压,修改【dubbo-admin-server】resources目录下【application.properties】的zookeeper地址

2、在【dubbo-admin-develop】目录下进入cmd,使用【mvn clean package】打包

3、在【dubbo-admin-distribution】的target目录下cmd,运行jar

 4、在【dubbo-admin-ui】的target目录下cmd,运行jar

5、在浏览器使用出现的url即可进入Dubbo Admin的管理页面

 


 

 

 dubbo与springboot整合

1、模块的pom.xml中引入dubbo(springboot2.X)

     <dependency>
            <groupId>com.alibaba.boot</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>0.2.0</version>
        </dependency>

2、resource下的配置文件中配置相关信息

 3、分清提供者和消费者,暴露服务使用dubbo下的@Service,注入提供者的服务使用@Reference

 4、实际效果

 

 

配置文件暴露服务

    <!-- 服务实现 -->
    <bean id="orderService" class="me.xiaomaju.service.impl.OrderServiceImpl"/>
    <!-- 暴露服务-->
    <dubbo:service interface="me.xiaomaju.service.OrderService" ref="orderService"/>

 

 

超时与重试

 

负载均衡

抽象类 AbstractLoadBalance 的4个实现类

Random LoadBalance: 随机选取提供者策略,有利于动态调整提供者权重。截面碰撞率高,调用次数越多,分布越均匀;

RoundRobin LoadBalance: 轮循选取提供者策略,平均分布,但是存在请求累积的问题;

LeastActive LoadBalance: 最少活跃调用策略,解决慢提供者接收更少的请求;

ConstantHash LoadBalance: 一致性 Hash 策略,使相同参数请求 总是发到同一提供者,一台机器宕机,可以基于虚拟节点,分摊至其他提供者,避免引起提供者的剧烈变动;

缺省时为 Random 随机调用

 

 

 

 

 

 

 

 

 

 
posted @ 2022-10-28 16:53  请叫我小马驹  阅读(46)  评论(0编辑  收藏  举报