美文网首页Dubbo
Dubbo剖析-服务消费端异步调用

Dubbo剖析-服务消费端异步调用

作者: 阿里加多 | 来源:发表于2018-03-13 09:29 被阅读34次

一、前言

前面我们讲解的无论是正常调用还是泛化调用也好,都是进行同步调用的,也就是服务消费方发起一个远程调用后,调用线程要被阻塞挂起,直到服务提供方返回。本节来讲解下异步调用,异步调用是指服务消费方发起一个远程调用后,不等服务提供方返回结果,调用方法就返回了,也就是当前线程不会被阻塞,这就允许调用方同时调用多个远程方法。

二、服务端异步调用实例

image.png

可以测试下在sayHello和sayHello2方法内sleep 2s,然后执行调用,会发现输出为costs:2这说明调用方的sayHello和sayHello2是并发调用的,因为如果是串行的话会输出costs:4.

三、总结

异步调用是基于 NIO 的非阻塞实现并行调用,客户端不需要启动多线程即可完成并行调用多个远程服务,相对多线程开销较小。后期会在本公众号 '技术原始积累' 的精品区下分析dubbo异步实现原理,敬请期待。

欢迎大家加入知识星球,在知识星球里面我们会深入讨论Java并发编程,以及JUC包源码;Java类加载器原理;Spring,Springboot,Tomcat,Dubbo等开源框架的使用以及源码剖析;分享作者从毕业到现在一路走来的学习经验,如何高效学习,如何阅读源码;讨论职业面试时候会经常遇到的问题以及如何作答,读者可以识别下面二维码加入:

image

相关文章

  • Dubbo剖析-异步调用实现

    一、前言 前面文章讲解了dubbo服务消费方异步调用使用,本文就来讲解如何实现的异步调用。 二、异步调用服务消费端...

  • Dubbo剖析-服务消费端异步调用

    一、前言 前面我们讲解的无论是正常调用还是泛化调用也好,都是进行同步调用的,也就是服务消费方发起一个远程调用后,调...

  • 2.异步调用—服务端异步处理

    服务端异步是指在调用端调用的时候,服务端采用异步的方式来进行操作1.CompleteFuture服务端代码 消费端...

  • Dubbo剖析-服务消费端泛化调用

    一、前言 前面我们讲解基于Spring和基于dubbo api方式搭建一个简单的分布式系统时候服务消费端是引入了一...

  • Java进阶-Dubbo-进阶

    一、服务调用过程 1.1 服务调用方式   Dubbo 服务调用过程:   Dubbo 支持同步和异步两种调用方式...

  • Dubbo剖析-服务降级

    一、前言 dubbo提供了一些服务降级措施,当服务提供端某一个非关键的服务出错时候,dubbo可以对消费端的调用进...

  • Dubbo后台管理和监控中心部署

    通过dubbo监控中心和后台管理可以很好的监控dubbo服务,监控服务端服务和客户端调用情况,调用次数,调用日志,...

  • Dubbo的服务调用(消费端)

    本系列参考官网文档、芋道源码的源码解读和《深入理解Apache Dubbo与实战》一书。Dubbo版本为2.6.1...

  • dubbo中的Filter链原理及应用

    filter在dubbo中的应用非常广泛,它可以对服务端、消费端的调用过程进行拦截,从而对dubbo进行功能上的扩...

  • Dubbo消费端

    Dubbo消费端可以让我们在调用远程服务时本身是无感知的,就像在本地调用方法一样。 消费端主要内容有配置初始化、服...

网友评论

    本文标题:Dubbo剖析-服务消费端异步调用

    本文链接:https://www.haomeiwen.com/subject/tfvafftx.html