【问题标题】:bluebird vs async.js performance蓝鸟与 async.js 性能
【发布时间】:2016-08-25 09:15:58
【问题描述】:

我了解 Promise 库提供了清晰的代码结构。 但它们更快吗?

我正在使用 async.js 'each' 来循环异步 xmlHttpRequests。如果我改用 bluebird 'all' 会更快吗?

【问题讨论】:

  • 那么,您的代码正在等待多个异步响应,不知何故您认为两个不同回调系统的处理速度真的很重要?
  • 我在异步每个循环中也有函数来解析 xml 响应。那么,您认为两种不同的回调系统不会产生任何显着的性能差异吗?如果是这样,选择 bludbird 而不是 async.js 的唯一原因是两个回调系统之间的代码抽象不同?
  • 有很多理由选择 Promise 而不是异步库。我最喜欢的原因是更加健壮和自动的错误传播,特别是在需要防弹代码的复杂场景中。 Bluebird 确​​实很快,但性能并不是这里的主要考虑因素。我建议你阅读这篇文章有很多选择承诺的理由:spion.github.io/posts/why-i-am-switching-to-promises.html

标签: performance asynchronous bluebird async.js


【解决方案1】:

如果您使用的是 ES6,则不再需要任何外部库。您可以只使用内置功能。如果您尝试返回所有请求的结果数组,您可以使用Promise.all,它也会返回一个承诺。 在这里阅读更多关于它的信息是MDN link

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2017-08-31
  • 1970-01-01
  • 2015-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-27
  • 1970-01-01
相关资源
最近更新 更多