使用wrk工具测试Nginx+KAE性能未得到提升
问题现象描述
软硬件条件相同,采用httpress工具对Nginx进行HTTPS短连接性能测试,开启KAE加速功能后,性能显著提升。但采用wrk工具对Nginx进行HTTPS短连接性能测试,开启KAE加速功能后,性能没有得到提升。
关键过程、根本原因分析
原因分析:wrk工具采用了TLS重连,整个压测过程中只有一次密钥的交换操作,RSA的占比太低,导致没有提速效果。
过程分析:结合wrk源码(如图1所示)进行分析,首先客户端握手阶段发送Client Hello子消息,里面的Session ID值是为空的。一次完整的握手阶段结束后,客户端和服务器端都保存有该Session ID,在本次会话关闭,下一次再次访问相同的HTTPS网站时,客户端浏览器会在Client Hello子消息中附带该Session ID值,服务器端接收到请求后,将Session ID与自己在Server Cache中保存的Session ID进行匹配,如果匹配成功,那么服务器端就会恢复上一次的TLS连接,使用之前协商过的密钥,不重新进行密钥协商。客户端和服务器端各自将Session ID保存在本地中,客户端保存在内存里,服务器端保存在Server Cache中,这样就只用调用一次RSA算法。
结论、解决方案及效果
KAE对握手阶段的RSA算法进行加速,如果压测工具采用了TLS重连,则看不到加速效果,此时建议使用其他压测工具,如httpress工具。
父主题: 安装KAE相关