首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >扩展AWS Kinesis流并提高消费者端性能

扩展AWS Kinesis流并提高消费者端性能
EN

Stack Overflow用户
提问于 2018-07-13 17:00:43
回答 1查看 496关注 0票数 0

Kinesis流用于从调用应用程序馈送消息,我们从Kinesis流和进程中获取消息。KPL (Onpremise)用于产生(馈送)数据到Kinesis,KCL (@ AWS EC2)用于消费者终端KPL以良好的速度产生消息,但消费者由于处理时间的原因而花费更多时间Question1>>How我们可以提高消费者的消费率吗?假设消费者并发读取流中的消息(并发数与分片数成正比) Question2>>We需要根据消费率自动伸缩分片,基于消耗伸缩的指标是什么?

EN

Stack Overflow用户

发布于 2018-07-19 22:21:44

Kinesis使用者应该非常快速地使用数据,就像您正确地使用KCL一样,它实际上会对转发到使用者进程的数据进行批量处理。回答您的问题:

  1. 确保您在您的消费者上使用“推送模式”。这意味着AWS将处理尽可能多的记录,以减少网络IO并实现快速处理。在我的应用程序中,它一次可以批处理700条记录,从而确保快速处理。有关推送/拉取模型的详细信息,请参阅link here
  2. 有用于自动伸缩分片的ad-hoc解决方案(不确定您现在是否可以通过kinesis直接自动伸缩),但是您可能希望监控每个分片的指标,例如MillsBehindLatest,这将在消费者端。然而,这会变得很棘手,因为您需要检查流中的每个分片。此外,您还需要监视生产者端以及

我的观点是保持简单,只需提供足够的容量,因为Kinesis甚至能够在几个分片上处理大量数据,并提供几个实例来处理不同可用区中的数据。随着数据的不断调整,增加分片数/实例数。

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51321441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档