gpt4 book ai didi

amazon-web-services - AWS Lambda - 处理非常高的并发请求

转载 作者:行者123 更新时间:2023-12-05 07:17:56 24 4
gpt4 key购买 nike

这是一个由两部分组成的问题。

我们正在将本地结构迁移到 AWS 云。该平台将 Instagram 影响者与对营销其产品感兴趣的品牌联系起来。
影响者收到商标链接以显示在他们的 Instagram 帐户上。

有一个功能,我们需要计算有多少关注者为有影响力的人刷了特定链接。我们的第一个实现是创建一个 lambda,它通过 API 网关接收请求,其中包含识别影响者和品牌的数据,将相关数据发送到 SQS,并将重定向发送到品牌 URL。

但问题是,客户要求我们的解决方案应该能够同时处理至少 20,000 个请求,因为在过去,一些拥有数百万粉丝的影响者能够产生那种瞬间的“向上滑动”当他们发布内容时。我们地区的 lambda 限制是每秒 1000 次并发执行。我们要求 AWS 提高它,他们将它提高到每秒 2500 个请求。

仍然远低于客户的要求。还需要考虑 API 网关并发请求的限制。看来API 网关也开始限制过多的请求。

有没有更好的方法来处理这种需求?最佳做法是什么?我们只需要计算一些有影响力的人收到了向上滑动和重定向。今天我们只是创建一个链接,其中包含影响者 ID、品牌 ID 和要重定向的 URL。有没有比使用 lambda 更好的替代方法来处理这个问题?是否可以使用无服务器方法来处理它?使用多个 EC2 服务器或将 beantalk 与 apache 或 nginx 一起使用会更好吗?

现在是第二个问题。我们如何使用 AWS 测试这种并发请求?简单地使用 Jmeter,当我们增加并发请求的数量时,我们的 lambda 函数甚至不会接收到它们。我认为向 AWS 发出过多请求可能会被误认为是 DDOS 攻击。如何测试需要能够接受非常高的并发请求的任何 AWS 解决方案?

谢谢。

编辑:
明确地说,我们不向用户提供任何内容。我们只需要算出有人发出了请求,然后进行重定向。有关谁发出请求和要重定向的 URL 的信息,将在所请求链接的参数上。我们只需要捕获该信息,这在 lambda 中很容易完成,并进行 301 重定向。

最佳答案

您的用例看起来很适合 Lambda@Edge,它利用 CloudFront 端点执行 lambda。对于像您这样的用例,这是边缘位置计算和缓存的完美结合。

By combining Lambda@Edge with other AWS services, developers can build powerful web applications at the edge that automatically scale up and down—with zero origin infrastructure and administrative effort required for automatic scaling, backups, or data center redundancy.

这些限制并不完全符合您的要求,但我想很多请求都将从缓存中得到响应,而不是需要执行 lambda。这是 table of limits for Lambda@Edge

enter image description here

注意:如果由于任何原因,您仍然需要更高的限制,那么您可以随时联系 AWS Support,我相信它喜欢这样的挑战,一定会帮助您

关于amazon-web-services - AWS Lambda - 处理非常高的并发请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58575698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com