这篇文章给大家介绍Reactor模型是什么呢,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
acceptor相当于是一个handler
因为有这么多的缺陷, 因此单线程Reactor 模型用的比较少。
这种单线程模型不能充分利用多核资源,所以实际使用的不多。
当其中某个 handler 阻塞时, 会导致其他所有的 client 的 handler 都得不到执行,
并且更严重的是, handler 的阻塞也会导致整个服务不能接收新的 client 请求(因为 acceptor 也被阻塞了)。
因此,单线程模型仅仅适用于handler 中业务处理组件能快速完成的场景
另一种画法(意思差不多):
另一种画法(意思差不多):
主从多线程Reactor模式
因为像TCP这样需要经过3次握手才能建立连接,
这个建立连接的过程也是要耗时间和资源的,
单独分一个Reactor来处理,可以提高性能。
mainReactor负责监听连接,accept连接给subReactor处理,
为什么要单独分一个Reactor来处理监听呢?
关于Reactor模型是什么呢就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。