Multiple

约 271 字小于 1 分钟

Multiple

  • 开启1个端口
    • 1个线程处理请求,n个线程处理数据
    • 1个线程处理请求和处理数据,n个线程处理数据
  • 开启多个端口
    • 1个线程开启多个端口,处理请求,n个线程处理数据
    • 1个线程开启一个端口和处理数据,n个线程处理数据
    • 1个线程开启多个端口,处理请求,1个线程处理数据
    • 1个线程开启一个端口和处理数据,1个线程处理数据

总结

  • 处理请求一般为CPU密集型,处理数据一般为CPU密集,IO密集型,混合密集型,多线程版本可以有很多种组合,请根据业务酌情选择
  • 需要考虑连接在线程之间传递安全、设计成本、维护成本、效率等问题
  • 常见使用方式为使用1个线程(Boss线程组,1个线程)处理请求,n个线程(Work线程组,1~n个线程)处理数据,详情见Netty,Boss Work NioEventGroup