Netty通信在中间件组件中的广泛使用-Dubbo3举例

Netty是一个高性能异步IO通信框架,封装了NIO,对各种bug做了很好的优化解决。所以很多中间件底层的通信都会使用Netty,比如说:Dubbo3,rocketmq,ElasticSearch等。

比方说,我们使用dubbo作为rpc跨进程远程通信,其实底层使用的还是Netty客户端与服务端的交互。我们封装好dubbo,然后把jar分别引入到consumer和provider,这时consumer和provider二者相当于都具有了dubbo的源码,dubbo肯定是同时具有Netty编写的Server端和Client端的,那么consumer和provider其实都可以作为服务消费者或服务生产者。如果在一个时刻,此时consumer作为client端去链接远端主机ip为xxx,port为xxx的provider,此时provider作为Server端等待监听bind port为xxx,其实就可以处理远程链接过来的consumer请求。然后返回最终结果给Client端,即交给consumer。

反之亦然。

底层由Netty作为网络通信基础。Netty可定制化,协议可定制,序列化方式可在java层面指定,dubbo3也做了很好的封装。

相关推荐
爆米花byh15 小时前
在RockyLinux9环境的Kafka4.1.1单机版安装(无ZK依赖)
中间件·kafka
爆米花byh16 小时前
在RockyLinux9环境的Storm2.8.3单机版安装
linux·中间件·storm
PD我是你的真爱粉16 小时前
FastAPI中间件与路由
中间件·fastapi
会算数的⑨17 小时前
Kafka知识点问题驱动式的回顾与复习——(一)
分布式·后端·中间件·kafka
小白不想白a1 天前
消息队列--包括面试常考题/运维监控指标
中间件
金刚猿1 天前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
Hello.Reader2 天前
Rocket Fairings 实战把全局能力做成“结构化中间件”
中间件·rust·rocket
岁岁种桃花儿2 天前
Kafka从入门到上天系列第一篇:kafka的安装和启动
大数据·中间件·kafka
波波0074 天前
每日一题:中间件是如何工作的?
中间件·.net·面试题
玄同7654 天前
LangChain 1.0 框架全面解析:从架构到实践
人工智能·深度学习·自然语言处理·中间件·架构·langchain·rag