在Amazon Lambda示例中使用异步?

异氰酸烯丙酯

我正在查看Amazon Lambda的示例代码,以调整S3存储桶中的图像大小。示例代码(为清晰起见,已删除):

// Download the image from S3, transform, and upload to a different S3 bucket.
async.waterfall([
  function download(next) {
    // Download the image from S3 into a buffer.
    s3.getObject({Bucket: srcBucket, Key: srcKey}, next);
  },
  function tranform(response, next) {
    gm(response.Body).size(function(err, size) {
      // do resize with image magic
    }
  }
]);
//... more handling code

...表明他们正在使用异步瀑布。但是,这些有序步骤似乎都依赖于先前功能的结果。因此,实质上,这是一个顺序操作。

在这里使用异步瀑布有什么好处?这与Amazon的Lambda执行引擎有关,还是与节点中明智的设计决定有关?

Ita

正如您所描述的,这基本上是明智的设计决策。该示例的作者没有进入“回调地狱”而是基本上使用了代码的扁平化waterfall

备用代码如下所示:

s3.getObject({Bucket: srcBucket, Key: srcKey}, function(response){
  gm(response.Body).size(function(err, size) {
  // do resize with image magic
  }
});

它的可读性较差,并且随着将步骤添加到处理中,可能变得更加复杂且可读性更差。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在iOS中使用Amazon Cognito调用GetID

来自分类Dev

在Amazon API Gateway中使用API密钥

来自分类Dev

在Grails中使用Amazon SES时出错

来自分类Dev

在iOS中使用Amazon Cognito调用GetID

来自分类Dev

Amazon Lambda调用错误

来自分类Dev

Amazon Lambda / API网关/ Amazon Lex-错误:已处理

来自分类Dev

使用Amazon RedShift旋转表格

来自分类Dev

使用Amazon登录的Spring Security

来自分类Dev

使用分区查询 Amazon Athena

来自分类Dev

使用串联的 Amazon Redshift Pivot

来自分类Dev

如何使用Amazon API在Amazon中添加产品?

来自分类Dev

使用Amazon Mobile Analytics而不配置Amazon Cognito

来自分类Dev

如何使用Amazon API在Amazon中添加产品?

来自分类Dev

如何在AWS Lambda中使用Node.js列出我的所有Amazon EC2实例?

来自分类Dev

使用Amazon Lambda运行Ruby on Rails应用程序

来自分类Dev

使用 AWS Lambda 函数订阅 Amazon SNS 主题?

来自分类Dev

是否可以通过Amazon API网关异步启动长时间运行的AWS Lambda流程?

来自分类Dev

Amazon Lambda不会写入DynamoDB

来自分类Dev

Amazon Lambda函数不接受发布

来自分类Dev

如何在SelectMany中使用异步lambda?

来自分类Dev

如何在Amazon EMR的Pig中使用Python流式UDF

来自分类Dev

在Amazon Redshift中使用复制命令处理数字空值

来自分类Dev

如何在Amazon Redshift中使用垂直列获取记录

来自分类Dev

在PHP中使用Amazon DynamoDB进行乐观锁定/ CAS

来自分类Dev

如何在Amazon SNS API(JAVA)中使用AuthenticateOnUnsubscribe标志?

来自分类Dev

在Groovy / Grails中使用Amazon Product Advertising API的最佳方法

来自分类Dev

如何在 IntelliJ 中使用 Gradle 设置 Amazon Polly SDK

来自分类Dev

如何在 Android 中使用 Amazon Comprehend API

来自分类Dev

Amazon S3 SLA如何与示例一起使用

Related 相关文章

  1. 1

    在iOS中使用Amazon Cognito调用GetID

  2. 2

    在Amazon API Gateway中使用API密钥

  3. 3

    在Grails中使用Amazon SES时出错

  4. 4

    在iOS中使用Amazon Cognito调用GetID

  5. 5

    Amazon Lambda调用错误

  6. 6

    Amazon Lambda / API网关/ Amazon Lex-错误:已处理

  7. 7

    使用Amazon RedShift旋转表格

  8. 8

    使用Amazon登录的Spring Security

  9. 9

    使用分区查询 Amazon Athena

  10. 10

    使用串联的 Amazon Redshift Pivot

  11. 11

    如何使用Amazon API在Amazon中添加产品?

  12. 12

    使用Amazon Mobile Analytics而不配置Amazon Cognito

  13. 13

    如何使用Amazon API在Amazon中添加产品?

  14. 14

    如何在AWS Lambda中使用Node.js列出我的所有Amazon EC2实例?

  15. 15

    使用Amazon Lambda运行Ruby on Rails应用程序

  16. 16

    使用 AWS Lambda 函数订阅 Amazon SNS 主题?

  17. 17

    是否可以通过Amazon API网关异步启动长时间运行的AWS Lambda流程?

  18. 18

    Amazon Lambda不会写入DynamoDB

  19. 19

    Amazon Lambda函数不接受发布

  20. 20

    如何在SelectMany中使用异步lambda?

  21. 21

    如何在Amazon EMR的Pig中使用Python流式UDF

  22. 22

    在Amazon Redshift中使用复制命令处理数字空值

  23. 23

    如何在Amazon Redshift中使用垂直列获取记录

  24. 24

    在PHP中使用Amazon DynamoDB进行乐观锁定/ CAS

  25. 25

    如何在Amazon SNS API(JAVA)中使用AuthenticateOnUnsubscribe标志?

  26. 26

    在Groovy / Grails中使用Amazon Product Advertising API的最佳方法

  27. 27

    如何在 IntelliJ 中使用 Gradle 设置 Amazon Polly SDK

  28. 28

    如何在 Android 中使用 Amazon Comprehend API

  29. 29

    Amazon S3 SLA如何与示例一起使用

热门标签

归档