美文网首页
谈⼀下对Reactor模型的理解?

谈⼀下对Reactor模型的理解?

作者: 嘘寒问暖 | 来源:发表于2022-07-11 23:45 被阅读0次

Reactor模型包含两个组件:

1. Reactor:负责查询、响应IO事件,当检测到IO事件时,分发给Handlers处理。

2. Handler:与IO事件绑定,负责IO事件的处理。

它包含⼏种实现⽅式:

单线程Reactor

这个模式reactor和handler在⼀个线程中,如果某个handler阻塞的话,会导致其他所有的handler⽆法执⾏,⽽且⽆法充分利⽤多核的性能。

单Reactor多线程

由于decode、compute、encode的操作并⾮IO的操作,多线程Reactor的思路就是充分发挥多核的特性,同时把⾮IO的操作剥离开。

但是,单个Reactor承担了所有的事件监听、响应⼯作,如果连接过多,还是可能存在性能问题。


多Reactor多线程

为了解决单Reactor的性能问题,就产⽣了多Reactor的模式。其中mainReactor建⽴连接,多个subReactor则负责数据读写。

相关文章

网友评论

      本文标题:谈⼀下对Reactor模型的理解?

      本文链接:https://www.haomeiwen.com/subject/ddeobrtx.html