【问题标题】:Is KCL for AWS kinesis processing thread safe?适用于 AWS kinesis 处理线程的 KCL 是否安全?
【发布时间】:2015-10-24 06:32:48
【问题描述】:

我们有一个应用程序,它处理来自 kinesis 的数据并保持一些状态几秒钟。我们担心保持的状态是否会受到 KCL 的多线程特性的影响。

谁能告诉我们来自 KCL 的 RecordProcessor 是否是线程安全的?

【问题讨论】:

    标签: amazon-web-services amazon-kinesis


    【解决方案1】:

    KCL 是一个围绕您处理记录的自定义逻辑的包装库。 该库的目的是在您专注于记录处理逻辑的同时管理 Kinesis 方面。 KCL 会将您的 EC2 工作器与某个或多个分片(通常是 1 个 EC2 工作器与 1 个分片)对齐,并维护一个存储排序键的 DynamoDB 表。

    您的自定义应用程序逻辑负责维护状态和线程安全。

    默认情况下,您从分片中提取的 Kinesis 记录列表(目标大小由您定义)将传递给您的代码以进行处理。您可以按顺序执行此操作,也可以根据需要将它们分叉到线程中。直到您从该处理方法返回后,KCL 才会为您从分片请求更多记录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-15
      • 1970-01-01
      • 2011-11-04
      • 1970-01-01
      • 2017-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多