影响TCP性能的协议因素:(1)TCP连接建立握手(2)TCP慢启动拥塞控制;(3)数据聚集的Nagle算法;(4)用于捎带确认的TCP延迟确认机制。(5)TIME_WAIT时延和端口耗尽。1、2可通过长连接避免,3可使用TCP_NODELAY避免,4可通过调整内核栈参数避免,但调整需谨慎,5通常只在性能测试环境出现。
普通服务器经过仔细的参数配置,也能支持百万级的idle长连接。关键是一堆net.ipv4参数,tcp_rmem/tcp_wmem的默认值要设小,tcp_mem/tcp_max_orphans要大。
相关博文
TCP性能优化