我正在使用amazon-kinesis-connectors来构建kinesis客户端应用程序。我正在弄清楚它的一些事情。
KCL如何确保负载平衡和扩展。例如,我有一个带有一个碎片的流,并且在一整天或特定时间内放置了大量记录/事件15分钟。那么它将如何处理这种突然的流量和负载。
答案 0 :(得分:1)
对于负载平衡,您需要多个分片。 Kinesis试图平衡每个工人所采用的碎片数量 - 如果你只有一个碎片,你就不会从多个工人那里获得任何好处。有关Kinesis负载均衡如何工作的更多信息,请参见此处my related answer。
至于缩放 - 每个分片都限制了它可以承担的最大流量 - 来自kinesis limitation docs:
每个分片每秒最多可支持1,000条记录进行写入,最高总数据写入速率为每秒1 MB
使用kinesis扩展的方式是添加更多分片 - 更多分片==更多吞吐量。您可以预先创建这些分片,也可以在流量增加时添加它们。