Kinesis streams for low-latency apps

0

A customer is interested in re-factoring their credit-card processing app, and they want to use "streams" to glue the various parts together. They are considering either Kinesis or Kafka. Besides the fact that Kinesis is not PCI compliance (client side encryption), they are concerned about the 5 read TPS limit per shard. That seems somewhat low for a real-time app.

The customer only has 100-200 ms time budget to process the transaction. While I know that Kinesis can pull multiple records per read, this implies a potential 200ms gap between reads. While not a lot, this may be a show-stopper for my customer. Is there any way to make Kinesis more responsive (higher read TPS), or is this gap a non-issue in terms of "real-world" latency?!

管理員
已提問 7 年前檢視次數 342 次
1 個回答
0
已接受的答案

Even though the throughput limits are not modifiable, customer can achieve higher throughput by sizing their Kinesis streams with enough number of shards and choose partition key wisely to distribute incoming records evenly across the shards.

There is a calculator available on Kinesis console, which can be used to calculate the number of shards needed based on the record rate and size.

Customer also should tune their Kinesis producer and consumer code to optimize the performance using KCL/KPL

AWS
已回答 7 年前
profile picture
專家
已審閱 1 個月前

您尚未登入。 登入 去張貼答案。

一個好的回答可以清楚地回答問題並提供建設性的意見回饋,同時有助於提問者的專業成長。

回答問題指南