Node内V8的Promise性能测试(粗测)
自己对Node上使用的V8进行了一下Promise的压力测试,用的是V8官方的测试脚本,对比了目前在维护的current和几个LTS最新版本,v10在Promise方面性能与v11基本一致。
(↓测试项) (毫秒数↘) (版本→) | [v11.0.0] | [v8.12.0] | [v6.14.4] |
---|---|---|---|
Time(doxbee-async-bluebird) | 63.4 | 101.6 | |
Time(doxbee-async-es2017-babel) | 61.6 | 166.2 | |
Time(doxbee-async-es2017-native) | 54.6 | 67.9 | |
Time(doxbee-promises-bluebird) | 40.4 | 72.7 | 113.7 |
Time(doxbee-promises-es2015-native) | 42.4 | 95.9 | 820.8 |
Time(fibonacci-async-es2017-babel) | 558.9 | ||
Time(fibonacci-async-es2017-native) | 477.2 | ||
Time(parallel-async-bluebird) | 208.1 | 582.8 | |
Time(parallel-async-es2017-babel) | 157 | 370.9 | |
Time(parallel-async-es2017-native) | 122.7 | 306 | |
Time(parallel-promises-bluebird) | 34.4 | 29.5 | 55.4 |
Time(parallel-promises-es2015-native) | 117.3 | 248 | 1300.4 |
因为是单机小压力测试,所以数据误差较大,会上下浮动的,±5的差距可以粗略。 V8自身的性能优化效果显著,Bluebird、Babel、native差距在逐渐缩小。