最近在写一个HTTP服务端RPC框架,在差不多成功后,进行了一次本机测试.
测试开发机器凑合看,客户端和服务端都在同一机器上:
cpu : i3-2120 3.3GHZ
内存:4g
操作系统:win7 32位
测试工具:HttpTest4Net(小巧简单)
计算单位:RequestPerSecond
II环境A:
HttpRequest -> HttpHandle->Session处理->解析QueryString->调用对应方法->返回结果
NODEJS环境B:
HttpRequest ->解析QueryString->(会经过自定义session)调用对应方法->返回结果
参考环境C:
静态文件,0字节
测试结果:
环境A:最大960,最小700,平均850
环境B:最大1460,最小1180,平均1300
环境C:最大5000,最小2500,平均4000
结论:
NodeJS+edge 还是比较有潜力的,考虑到Nodejs的单线程模型,在多核上还能跑出更好的成绩.
但是,没有了HttpContext支持,Cookie/Session管理需要自己手工处理或者在Nodejs上做跟上一层的支持.
不过,由于单线程模型,如果某个业务卡住,会导致系列的问题,需要修改逻辑写法.