amazon-web-services - 在 AWS 上缓冲网站事件流的经济有效方式?
问题描述
我正在尝试在我的网站上捕获事件流数据,这些数据不会获得大量流量——可能约为 50-200 DAU——但如果有必要,我希望能够处理更多。
由于没有大量的流量,我认为像 Kinesis 这样的东西可能有点矫枉过正。我的网站目前使用 API Gateway + Lambda 来处理一些服务器端逻辑,我认为在每个 Lambda 处理程序函数中,我可以将事件数据推送到 SQS,然后安排一个 Lambda 函数定期从 SQS 中提取一批数据,将其分组一起并将其存储在 S3 中。
我的方法可行/合理吗?你会建议改用 Kinesis、RabbitMQ 或 Kafka 之类的东西吗?还是您会采取另一种方法?
谢谢你的帮助!
解决方案
任何类型的流数据都是为 Kinesis 量身定制的。如果您最终在某个时候获得更多流量,现在通过使用 Kinesis,您就可以进行扩展了。
我会计算出您可以获得并使用的最低 Kinesis 碎片成本。
价钱
Shard Hour (1MB/second ingress, 2MB/second egress) $0.015
PUT Payload Units, per 1,000,000 units $0.014
每小时 1 美分和 100 万次看跌的一美分可能满足您现有的需求。
推荐阅读
- javascript - DataTables 在新数据上丢失 pageLength
- javascript - 为什么我的索引 POST 请求不起作用?
- c# - 我们如何从 RabbitMQ 队列中获取实时消息而不会在 .NET 中出现任何延迟?
- python - 如何创建合适的 sigmoid 曲线?
- ruby-on-rails - Rails capistrano 生产部署错误:“ArgumentError: key must be 16 bytes”
- google-cloud-run - 在 Cloud Run 中初始化 sdk
- pandas - How to find the row whcih contains from the pivot table
- datatable - 闪亮的数据表分页在闪亮的仪表板中不起作用
- flutter - 如何调用 CupertinoPicker
- java - 无法对 Oak lucene 使用全文搜索