写点什么

Amazon Lambda 支持以简单队列服务作为事件源了

  • 2018-07-17
  • 本文字数:1106 字

    阅读完需:约 4 分钟

Amazon发布更新其简单队列服务(SQS)——开发人员现在可以使用SQS 触发 AWS Lambda 函数了。而且,开发人员不再需要运行轮询服务或创建 SQS 到 SNS 的映射

Amazon SQS 是一个消息队列服务,它在 AWS 中已经存在 10 多年了。它是由 Amazon 完全托管的,可以解耦服务,通过网络访问,自动扩展,预付费。此外,SQS 提供两种类型的队列:

  • 标准队列,提供最大吞吐量、最优排序、至少一次传输;
  • SQS FIFO 队列,按照设计,它可以保证消息仅处理一次,而且是完全按照发送顺序。

AWS Lambda 是四年多前推出的一项计算服务,让开发人员不用配置或管理服务器就可以运行代码。多年来,随着 Amazon 加入更多特性,该服务一直在演化,现在已经支持 SQS 了,也就是说,开发人员现在可以使用队列服务作为 Lambda 的直接事件源来触发事件。目前,Lambda 触发器仅支持标准队列。

在 Lambda 函数中使用 SQS 触发器的典型设置是把它添加到一个函数中,配置函数的执行角色,并指定恰当的权限用于和 SQS 标准队列通信。然后,指定将触发函数的队列名称以及该函数一次可以接收多少消息。



图片来源: https://aws.amazon.com/blogs/aws/aws-lambda-adds-amazon-simple-queue-service-to-supported-event-sources/

当批次大小设置为 1 时,只能同时触发 10 个 Lambda 执行。不过,当批次大小设置的更大时,只能触发一个 Lambda 执行,并基于这个大小发送一些消息。此外,ACI 信息集团技术副总裁 Chris Moyes 在 TechTarget 的一篇文章中写道:

另外,开发人员可以使用这个批次大小,结合 Lambda 的 Reserved Concurrency 设置,设定一次可以处理的消息数量,这有助于控制使用情况,或者防止消息大量涌入其他系统,如把内容传递给 FTP 服务器。

一旦函数消费了现有的消息,AWS Lambda 就会从 SQS 标准队列中删除消息。不过,当函数执行失败或者超时的时候,消息会在队列设置的可见性超时时间过后再次出现在队列中。开发人员可以设置可见性超时、重试次数、重试间隔默认值。

在消费消息时,Lambda 可以横向扩展,并且是自动实现。据公告博文介绍:

按照设计,当队列为空时,Lambda 的自动扩展行为可以保持较低的轮询成本,与此同时,当队列使用频繁时,它又让我们可以向上扩展,实现高吞吐量。

注册在 SQS 中的 Lambda 触发器可以在 SQS 控制台中管理——用户可以在那里配置和编辑触发器。最后,该特性现在已经可以在提供 Lambda 服务的所有区域使用,文档已经更新,除了Lambda 服务不断对SQS 队列长轮询的费用外,还有其他的费用——Amazon 将根据标准 SQS 定价费率收取该账户的 API 调用费用。

查看英文原文: Amazon Announces Lambda Now Supports Simple Queue Service as Event Source

2018-07-17 19:003978
用户头像

发布了 1008 篇内容, 共 403.2 次阅读, 收获喜欢 345 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

spring4.1.8扩展实战之八:Import注解

程序员欣宸

Java spring Spring Framework 6月月更

如何为 SAP 电商云每个不同的 JavaScript Storefront 分别配置 API endpoint

汪子熙

SAP Hybris commerce 电商云 6月月更

Linux开发_网络编程基础(1)

DS小龙哥

6月月更

连续居家办公68天后——我的2022居家办公所感所想| 社区征文

No Silver Bullet

居家办公 6月月更 初夏征文 心得体会

千万级学生管理系统考卷模块存储架构设计

泋清

#架构训练营

列表视图——基于函数的视图 Django

海拥(haiyong.site)

Python django 6月月更

千万学生管理系统试卷存储方案

intelamd

《网络是怎么样连接的》读书笔记 - 认识网络基础概念(一)

懒时小窝

网络编程

【愚公系列】2022年06月 通用职责分配原则(七)-纯虚构原则

愚公搬代码

6月月更

2022 年 Java 行业分析报告

看山

Java 行业报告

Android MediaPlayer音频播放器详解

yechaoa

android 6月月更 MediaPlayer

Switch 块、Switch 表达式、Switch 模式匹配,越来越好用的 Switch

看山

Java Switch

架构实战营|模块4

KDA

#架构实战营

千万级学生管理系统的考试试卷存储方案

joak

详解python的运行方式

左手の明天

Python 运行原理

架构训练营模块四作业

融冰

DOM核心——Document类型

大熊G

JavaScript 前端 6月月更

Vue-14-列表渲染v-for

Python研究所

6月月更

SDN系统方法 | 8. 网络虚拟化

俞凡

架构 网络 sdn SDN系统方法

GNU/Linux知识库(2)- 安装和文件系统

冯亮

Linux DevOps GNU

网上教学 助力战疫 | 社区征文

yu

原创 原创保护 初夏征文

力扣每日一练之数组下篇Day3

京与旧铺

6月月更

《清单革命》:如何忙而不乱?

郭明

读书笔记

☕️Java11 中基于嵌套关系的访问控制优化

看山

Java Java11

华为云图引擎服务

程思扬

华为 华为云 云开发

【mycat】mycat在windows环境下的安装和启动

迷彩

架构 mycat 数据库中间件 MySQL 数据库 6月月更

vue全局守卫

小恺

6月月更

周末来学集合论

坚果

6月月更

Prometheus、Grafana安装配置linux服务器监控dashboard

橙子猿

golang Prometheus #Grafana

简约而不简单的Kanban方法

Bruce Talk

Kanban 敏捷开发 Agile

关于分布式系统一致性

Joseph295

Amazon Lambda支持以简单队列服务作为事件源了_亚马逊云科技_Steef-Jan Wiggers_InfoQ精选文章