推荐一个零声学院免费公开课程,个人觉得老师讲得不错,分享给大家:Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,立即学习
首先,三次握手发生在哪个api中?
服务端不发生在任何api中,在协议栈本身完成的,不由应用程序管理,发生在listen之后accept之前。可以选用一线程一连接模式,不过会导致内存耗尽。select,poll,epoll都属于事件驱动。
- 如果不关闭不清空,会一直触发。
- select设置可读,监测到数据后设置可写,再将数据发送,reactor模型。
- select会复制进去再复制出去,大量fd的管理比较有限。