文件名称:nginx-tcp-server:基于Nginx的高性能TCP服务器
文件大小:1.09MB
文件格式:ZIP
更新时间:2024-06-04 14:36:02
C
nginx tcp server 基于nginx的高性能的TCP服务器模块。采用协程(makecontext)实现纯异步, 异步支持mysql,redis等常用的基于TCP的驱动。 本模块基于nginx的stream开发。只支持1.9.x以上的版本。 基于协程的异步实现: 基于协程的异步实现基本原理是: 通过重写系统的connect,recv,send,read,write及其它相关IO函数。 每一个请求过来时,开启一个新的协程,在这个协程中,进行新的网络 连接时(connect),重写的connect函数自动把socket设置为非阻塞。 当在协程中进行读写时,如果socket未就绪(不可读或不可写), 重写的send,recv,read,write函数自动会挂起当前协程, 返回到主程序处理其它请求。在挂起当前协程的同时会给 该socket添加读或写的事件监听,当该描述符就绪时(可读或可写