开发者社区> 问答> 正文

work之间为什么要独立使用epoll?为什么不共享?

work之间为什么要独立使用epoll?为什么不共享?

展开
收起
xi哈啥哈 2022-04-30 09:13:03 355 0
来自:阿里技术
1 条回答
写回答
取消 提交回答
  • 1.为了避免各个worker之间发生争抢连接处理,netty直接做了物理隔离,避免竞争。各个worker只负责处理自己管理的连接,并且后续该worker中的每个client的读写操作完全由 该线程单独处理,天然避免了资源竞争,避免了锁。 2.worker单线程,性能考虑:worker不仅仅要epoll_wait,还是处理read、write逻辑,加入worker处理了过多的连接,势必造成这部分消耗时间片过多,来不及处理更多连接,性能下降。

    2022-05-08 11:16:58
    赞同 展开评论 打赏
问答地址:
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载