我实现了一个server,支持HTTP协议和内部私有协议,为了简化部署,我设计成一个端口同时兼容两种协议的客户端.根据连接后到达的消息头自动识别客户端协议.这种事情的传统做法是,accept后加入epoll,当fd第一次可读时,读出一些并解析,判断协议类型. 创建相应的上下文对象,开始服务.这样就引入了中间状态,为了省事,我用了TCP_DEFER_ACCEPT来简化这个过程. TCP_DEFER_ACCEPT,是Linux下的socket支持一个tcp选项,man这么说的: TCP_DEFER_…