用于 Web 服务的 AWS Kinesis

AWS Kinesis for web services

我的一个客户有一个现有的应用程序,它从第三方服务读取数据,写入我的数据库。稍后,此数据用于为我的 android 应用程序创建网络服务。

现在整个代码都迁移到了 AWS,我的客户想要更好的服务来完成这项工作。所以在调查中,我发现 AWS 服务 "Kinesis" 可以用于数据流。不幸的是,这在免费套餐中不可用。如果有 AWS 经验的人可以告诉我是否可以将 "Kinesis" 用于此 Web 服务目的?

感谢和问候, Tismon Varghese.

Kinesis 是一种服务,能够在一端获取事件,让您在另一端处理这些事件,并在中间做一个缓冲区,将这些事件存储一段时间。

是的,您可以将任何来源的事件提取到 Kinesis 中(只要它们小于 1MB - 请在此处查看更多限制:http://docs.aws.amazon.com/streams/latest/dev/service-sizes-and-limits.html)。您还可以读取另一端的事件并将它们放入您的数据库(Redshift、RDS 或您在 EC2 上的数据库)。

您可以有多个选项来阅读这些事件。如果您使用 Kinesis Firehose 写入 Redshift,它可以完全自动。它可以是无服务器的,使用 AWS Lambda,当您的运动流中有新事件时触发。也可以使用开源库 KCL (http://docs.aws.amazon.com/streams/latest/dev/developing-consumers-with-kcl.html) 使用您自己的代码在您的服务器上完成。

Kinesis 的成本极低,您只需花几美元就可以试用几天,甚至更少。如果您开始大量使用它,有很多选项可以优化它的使用,但您首先需要开始进入实时事件处理的思维模式。