3 ms·
Why use bluebird promises instead of native ones? Are them faster or is it just old habits?
by davide_ross 8y ago
Why use bluebird promises instead of native ones? Are them faster or is it just old habits?
- ScottWRobinson 8y agoNot the author, but it seems as though Bluebird is indeed faster and more efficient (see [1]). Could also just be habit though. [1]: https://softwareengineering.stackexchange.com/q/278778/306009 https://softwareengineering.stackexchange.com/q/278778/30600...
- hinkley 8y agoI'd like to see new benchmarks for that. If you recall from the V8 6.6 release notes, they talked about performance impromevents in promise and async benchmarks. The Notes: (see Asynchronous performance improvements) https://v8project.blogspot.com/2018/03/v8-release-66.html https://v8project.blogspot.com/2018/03/v8-release-66.html The Graph: https://2.bp.blogspot.com/-T_HWK2MlCOY/WrkGw1-ABJI/AAAAAAAAB4U/8aUwrDtT3u0wkUN0xdLnV5Kkhf00H3QyQCLcBGAs/s1600/promise.png https://2.bp.blogspot.com/-T_HWK2MlCOY/WrkGw1-ABJI/AAAAAAAAB... Looks like about 20%, 30% for some benchmarks. Note to release note authors: Please put IDs on your headers so people can cite you properly. Thank you.
- deleted 8y ago[deleted]
- realPubkey 8y agoLooks like native promise is faster at least in the latest chrome. https://jsperf.com/promise-vs-bluebird https://jsperf.com/promise-vs-bluebird
- deleted 8y ago[deleted]
- hinkley 8y agoAnd the speed difference on Firefox 60 is barely outside the confidence interval. One thing I noted in looking at the bluebird benchmark is that native promises on Node 10 are only a hair slower than bluebird on Node 8.9. So there's a sales pitch for upgrading to node 10 so you can stop using bluebird.
- hinkley 8y agoNode 10.1, doxbee benchmark: file time(ms) memory(MB) promises-bluebird-generator.js 282 39.13 promises-native-async-await.js 292 48.66 promises-bluebird.js 305 47.38 promises-then-promise.js 382 67.37 promises-ecmascript6-native.js 390 66.93 Parallel: file time(ms) memory(MB) promises-bluebird.js 547 99.01 promises-bluebird-generator.js 574 98.68 promises-native-async-await.js 1165 254.62 promises-ecmascript6-native.js 1231 256.41 promises-then-promise.js 1569 302.88 Still a big gap for parallel, but not what it used to be.
- koolba 8y agoBluebird's promise implementation is faster in the common case (single thenable chain) and also includes some non-standard convenience functions for composing groups of Promises. The performance differences are meaningless for most people but if you're used to coding with the convenience functions it's annoying to not have them available.
- invalid_ 8y agoI couldn't find a single use that had bluebird only functionality.
- sciguymcq 8y agoit was just an old habit (author)