dubbo底层的通信框架netty

nio 一个线程管理selector selector注册很多channel io都通过channel  线程不是阻塞的等待。而是监听,那个有反应去处理哪个。也就是所有的操作都在一个线程上执行。

netty 服务端是多线程串行化。

内部的分工是 一个eventloop线程做监听 接收连接。有链接过来,就转发给eventloopgroup,就new出一个eventloop线程,然后吧这个channelhandler(任务:解码 接收 发送 还有自己的业务逻辑等)放到channelpipleline(channel和channelpipleline是一对一的),之后按顺序执行,每个channel对应一个线程处理。所以一个任务只给一个线程处理,一定是线程安全的。

猜你喜欢

转载自www.cnblogs.com/tecnologycc/p/10409581.html