赞
踩
1 超时,重试设置
@Service(timeout = 3000,retries = 2)//当前服务3秒超时,重试2次,最多共调用3次
2 权重设置(集群:服务提供者多个,服务消费者1个来测试)
@Service(weight = 100)
3 负载均衡设置(集群:服务提供者多个,服务消费者1个来测试)
@Reference(loadbalance = "random") //随机策略
@Reference(loadbalance = "roundrobin") //轮询策略
@Reference(loadbalance = "leastactive") //最小访问量
@Reference(loadbalance = "consistenthash") //一致性hash算法
4 多版本(灰色发布),将服务提供者的实现类,再重新写一个,注解中添加参数即可
当出现系统版本升级时,新版本有可能不够稳定,这时候可以通过设置version来进行平滑的过渡,下面是dubbo官网的版本迁移步骤:
在低压力时间段,先升级一半提供者为新版本,再将所有消费者升级为新版本,然后将剩下的一半提供者升级为新版
而新旧版本我们可以通过version来定义,假设老版本的version=1.0.0新版本的version=2.0.0;
老版本服务提供者:@Service(version='1.0.0')
新版本服务提供者:@Service(version='2.0.0')
老版本服务消费者:@Reference(version='1.0.0')
新版本服务消费者:@Reference(version='2.0.0')
@Reference(version='*') 随机调用 新老版本
5 服务分组
当一个接口(服务提供者)有多种实现时,可以用group区分
@Service(group='old')
@Reference(group='old')
6 dubbo直接,不需要注册中心,仅测试用
- 服务提供者 application.yml配置
- registry:
- address: 127.0.0.1:2181
- # 读者请自行更改zookeeper地址
- protocol: zookeeper
- check: false
- #register 增加这个选项参数,表示只订阅,不发布服务
- register: false
- protocol:
- name: dubbo
- port: 30003
- //服务消费者配置
- @Reference(url = "dubbo://localhost:30003")
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。