【微服务】微服务间的通信方式


总的来说,各个微服务之间的通信方式分为以下2种:

1、同步调用

同步调用也就是:调用方需等待执行方的调用结果

Dubbo的RPC方式(底层基于Netty实现,而Netty底层基于Java NIO,基于TCP建立的长链接)

SpringCloud的Restful http方式,短连接的方式

性能方面:Dubbo > SpringCloud

【扩展知识】:

BIO,NIO,AIO只是一种网络通信模型

BIO:传统的阻塞IO模式,为每个连接创建一个线程

NIO:一个线程服务多连接,弊端是当连接数过多,性能下降

Netty: 封装了NIO,在它的基础上,添加主从处理组,BoosGroup和WorkerGroup

 

2、异步调用

异步调用也就是:调用方无需等待执行方的执行结果

典型的就是消息队列(MQ)

主流的消息队列框架:Kafka,ActiveMQ,RocketMQ等

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM