测试环境:Win32,i5-4460@3.2,Indy 10.5.7
直接在OnCommandGet中返回下面一行字符串:
'<html><title>Hello</title>' + FormatDateTime('yyyy-mm-dd hh:nn:ss.zzz', Now) + '</html>';
使用ab进行测试:
ab -n100000 -c1400 -k http://localhost/
对我来说,这个结果还是可以接受的。
QPS=19292.74,马马虎虎能用。作为对比说一下其他情况,IOCP大约在9万多,http.sys大约在16万。
1400个长连接基本上就是稳定运行的极限了,超过就死给你看,蹦AV的那种。2000个长连接能测试通过,不过死得太惨就不说了。
这个结果也能从另外一个角度说明Intraweb的极限,毕竟底层是一毛一样的。Intraweb没测试,有兴趣的自己去测吧。
当然,IndyTcpServer的极限差不多也就这样,有了测试结果之后,该如何选择底层通讯套件心里就有数了。