dubbo缓存、异步、集群容错、负载配置、回调

weight在服务发起方dubbo:service标签中配置在这里插入图片描述
在这里插入图片描述
指定方法使用缓存
在这里插入图片描述
缓存策略
在这里插入图片描述

dubbo异步

1.什么时候需要使用异步?
当你需要同时调用多个Dubbo服务,这些服务又没有先后顺序,就可以使用异步调用。
2.如何开启异步调用?

//优惠服务
@Reference(async = true)
private PromotionDubboService promotionDubboService;
//库存服务
@Reference(async = true)
private InventoryDubboService inventoryDubboService;

3.如何获取异步结果
如果后续还有异步调用,该Future会被覆盖 (每个服务后面接这行代码就能取到上一个服务的返回结果)
Future promotionFuture = RpcContext.getContext().getFuture();
4.async源码分析
无论是否设置异步调用,Dubbo底层其实都是会使用异步调用。区别在于如果async=false,则Dubbo会自动调用Future.get()方法获取结果,如果async=true,则只能手动调用Future.get()方法获取结果。

事件回调

在这里插入图片描述

引用接口时定义回调的方法(消费方)
在这里插入图片描述在这里插入图片描述
一般回调方法有两个参数,一个是回调结果,一个是请求时的入参

猜你喜欢

转载自blog.csdn.net/qq_41700030/article/details/106960498
今日推荐