Dubbo 3 消费者怎样异步调用?
查看完整题解
参考回答
直接回答
接口返回 CompletableFuture 时,消费方拿到 Future 后可先处理其他工作,再通过回调或组合使用结果。对支持的普通接口也可以按文档启用异步模式,从调用上下文取 Future。
讲清原理
调用会在结果回来时正常完成,超时等异常也会反映在 Future 上。后续工作可按依赖顺序串起来,同时保留错误处理。把网络等待改成回调不会让远端执行时间变短。
例子与易错点
价格和库存查询彼此独立,可以分别发起,然后用 thenCombine 合并。取到第一个 Future 后马上 join() 再发第二个,请求就又变成串行。
延伸阅读 Dubbo 调用一定会阻塞线程吗? · Dubbo 3 服务端怎样异步执行? · Dubbo 3 的并发控制怎么设?
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。