• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

无信不立

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

【网络编程】四、Scalable IO in Java 中的react线程模型和Netty的线程模型

转载:https://www.cnblogs.com/dafanjoy/p/11217708.html

 

一、高性能react线程模型

客户连接事件的多路复用线程池存在的目的:是为了提升系统的吞吐量

读写I/O事件的多路复用器线程池存在的目的:是差异化处理各个客户端的I/O事件,与客户连接 和 命令处理进行隔离。

工作线程池存在的目的:专注完成命令任务。

 

在服务的设计当中,我们还需要注意与java.nio包特性的结合:

一是注意线程安全,每个selectors 对应一个Reactor 线程,并将不同的处理程序绑定到不同的IO事件,在这里特别需要注意线程之间的同步;

二是java nio中文件传输的方式:

① Memory-mapped files 内存映射文件的方式,通过缓存区访问文件;

② Direct buffers直接缓冲区的方式,在合适的情况下可以使用零拷贝传输,但同时这会带来初始化与内存释放的问题(需要池化与主动释放);

 

二、Netty线程模型

 

posted on 2022-03-17 10:57  无信不立  阅读(88)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3