初次使用AWS:使用哪项服务能够重复 ping API 终端点并保持在免费套餐内?

0

【以下的问题经过翻译处理】 正如我之前所提到的,我是AWS的新手,正在尝试规划一个个人项目。我有一个API,我想从中获取近乎实时更新,但是该API没有通知服务(尚未)。我的目标是以极限速率 ping 它以检测更新,当某些更新通过时,我想从这些更新中获取数据并存储它们。我目前有两个想法:

EC2实例ping终端节点->当我找到所需的某些更新时发送SQS消息->数据转换的lambda(和另一个API调用)->存储在dynamodb中以便以后访问

限制:

*如果对此API的更新比请求速率限制更频繁,则我需要从多个实例/不同IP地址进行请求 *为了保持最新,这需要24/7 EC2运行时间,我想象这将会很昂贵,我不想在这个个人项目上花费太多

另一个想法是相同的过程,但所有API调用都将来自lambda函数(从EC2实例调用)以获得更多的API请求和更多的数据。绕过API速率限制以保持对我正在寻找的数据的最新状态

限制:

*24/7 EC2运行时间加上显著更多的Lambda调用。这将更加昂贵

我会感激任何人提供建议,以帮助我尽可能保持在免费套餐!

profile picture
EXPERTE
gefragt vor 5 Monaten27 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 根据一些数字,使用 Lambda 可能是值得的。假设:

1.一个月有2629800秒。 2. 您可以使用最便宜的 Lambda 进行检查 (128 MB),在最便宜的地区每秒花费 0.000001666675 + 每次调用 0.0000002(官方文档) . 3. Tu 是您检测更新所花费的时间。 4. Tc 是检查(lambda 执行)间隔的时间。

您每月使用 Lambda 的费用为 Tu * 0.000001666675 * (2629800 / Tc) + (2629800 / Tc) * 0.0000002 = (4.383Tu + 0.526)/Tc

你对 Tu 没有太多的控制权,尽管你可以优化函数使其更快。假设您使用的是 Python 之类的东西,并且每次检查需要 200 毫秒。现在你有: Cost = 1.4/Tc

如果您接受每秒检查一次,我们说的是 1.4 美元/月,这比最便宜地区的任何按需 EC2 实例都便宜。如果您需要更快的检查,拥有一个非常小的 EC2 实例,例如 t4g.nano,全天候 24/7 花费大约每月 3 美元,同样,在最便宜的地区。所以这完全取决于您对近乎实时更新的定义。

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen