服务器编程基本框架
基本框架
I/O处理单元: 处理用户链接读写网络数据
逻辑单元: 业务进程或者线程
网络存储单元(可选): 数据库,文件,或缓存
请求队列: 各单元之间的通信方式
服务器通常需要处理 I/O事件、信号及定时事件
同步I/O实现Reactor模式、异步I/O实现Proactor模式
同步IO:发出一个功能调用时,没有得到结果前就不返回,必须做完的前一件才能做下一件(普通BS模式)
异步IO:发出一个功能调用时,服务器不会立即返回结果(同时可以干其他事),实际处理部件在处理完之后,通过状态、回调、通知来通知调用者(ajax请求)
Reactor(核反应)模式
要求主线程(I/O单元)只负责监听文件描述符上是否有事件发生,有的话通知工作线程(逻辑单元),放入消息队列,交给工作线程处理,除此之外,主线程不做其他工ajax请求作
Proactor模式
所有的I/O操作都交给主线程和内核来处理(进行读、写),工作线程只负责业务逻辑
本文来自博客园,作者:InsiApple,转载请注明原文链接:https://www.cnblogs.com/InsiApple/p/16216643.html