http://www.javashuo.com/article/p-yeqleamk-kt.htmlhtml
http://www.javashuo.com/article/p-pzuajhks-bq.html多线程
- 厉害
-
单线程Reactor

- 另外一种画法(意思差很少):
-
缺点:
- 当其中某个 handler 阻塞时, 会致使其余全部的 client 的 handler 都得不到执行,
- 而且更严重的是, handler 的阻塞也会致使整个服务不能接收新的 client 请求(由于 acceptor 也被阻塞了)。
- 由于有这么多的缺陷, 所以单线程Reactor 模型用的比较少。
- 这种单线程模型不能充分利用多核资源,因此实际使用的很少。
- 所以,单线程模型仅仅适用于handler 中业务处理组件能快速完成的场景
-
多线程的Reactor

- 另外一种画法(意思差很少):
- 主从多线程Reactor模式
- mainReactor负责监听链接,accept链接给subReactor处理,
- 为何要单独分一个Reactor来处理监听呢?
- 由于像TCP这样须要通过3次握手才能创建链接,
- 这个创建链接的过程也是要耗时间和资源的,
- 单独分一个Reactor来处理,能够提升性能。