UNP-Reactor模型
Reactor
又叫Event loop,事件驱动模型,反应堆模型。它有两个要点。
- 存在一个无限循环的事件分发线程,或者叫reactor线程,event loop线程。这个事件分发的背后,就是poll,epoll等I/O技术。
- 所有的I/O操作都可以抽象为事件,每个事件必须有回调函数来处理。acceptor上有连接成功建立,已连接套接字发送缓冲区可写,通信管道pipe上有数据可读,这都是一个个的事件,通过事件分发,这些事件都可以被感应,并调用回调函数处理。
任何一个网络程序,所做的活大概为:
- read 从套接字读数据
- decode 对收到的数据解析
- compute 根据解析得结果,计算
- encode 对处理之后的结果,按照约定编码
- send 最后发送
每一篇博客,不为别的,证明我的成长。每一次发文,不为别的,证明我严阵以待。蜗牛爬得很慢,却终有一日登上参天大树。因为它热爱。