服务提供者
1、先写一个接口;
2、一个或者多个实现类,添加dubbo的@service注解;
区分不同的服务:
version
groupp
@Reference 可以指定version和group,可以找到代理对象,放入spring容器中;
负载均衡策略
随机
轮询
最少活跃调用数:由服务消费者记录调用次数,如果调用次数相同,则随机调用
一致性hash:根据参数算出hash,并映射到服务上;
服务超时
1、消费者发送请求
2、服务端执行业务;
3、服务端返回结果
当服务端和消费端都配置了超时时间,消费端的时间,调用服务到收到结果的时间;
服务端的时间,服务端接到请求到返回结果的时间;
集群容错机制
failover 重试其他服务;
failfast 失败立即报错;
failback 失败自动恢复,后台记录失败请求,定时重发。
failsafe 失败直接忽略;
forking 并行调用多个,只要一个返回成功即可;
broadcast 广播调用,任意一个报错就报错。
服务降级
调用服务出错,直接返回友好提示。
本地存根
由服务提供者提供,在消费者一侧执行。
回调
服务端调用消费端
异步调用
泛化调用