在ReInvent上,上周发布的公告之一是,ALB现在可以调用Lambas来满足HTTPS请求。由于我们已经可以将API网关连接到Lambdas,所以对于这个新特性解决了什么问题,我感到有点困惑。
谁能举几个例子吗?
发布于 2018-12-06 21:22:55
这解决的问题是,它允许使用Lambda函数处理HTTP请求和生成响应的另一种方法。
...but您已经可以使用already或CloudFront的Lambda@Edge特性来完成此操作。
那么,它真正解决了什么问题呢?
简化了Lambda请求处理与使用ALB的以服务器为中心的应用程序的集成。
虽然这个特性在某种意义上提供了API网关功能的一个子集,但它在一个重要的方面有所不同--允许您在现有基于EC2的应用程序中轻松地将Lambda函数“装入”到一组特定的路径中。
您可以选择特定的路径模式,只将这些路径模式发送到Lambda函数--在同一域下,不需要跨域复杂性,也不需要通过EC2实例代理请求--同时继续从EC2为应用程序的其余部分提供服务。避免应用程序中的跨域资源会简化许多事情,尤其是cookie和会话。
在某些情况下,您也可以使用它来替换API网关所能做的事情,但实际上并不是专门为Lambda函数设置ALB,尽管您当然可以这样做。
发布于 2018-12-06 11:57:36
这是一项伟大的声明,真正地促进了无服务器体系结构。在我看来,我觉得下面的用例现在更有意义了:
现在,这将使我们能够从/application触发器Lambda函数开始路由请求。
发布于 2019-10-30 23:30:15
另一个不同之处是ALB支持HTTP端口80侦听器,而API网关只支持HTTPS端口443。
有些用例中,发送/接收数据的客户机/设备出于多种原因将不支持HTTPS,例如远程设备或嵌入式设备。
ALB现在允许可能更便宜/更有针对性地直接代理到Lambda函数,而不是从CloudFront路由到API到Lambda。
https://stackoverflow.com/questions/53646044
复制相似问题