如何在分布式模式下设置我的 Kafka Connect 以获得更好的性能



我正在分布式模式下运行我的Kafka connect进行弹性搜索。 目前我有 2 个 EC2 实例(实例类型 t2.2xlarge(

Number of vCPUs 8
Memory  32 Gb

我正在上述实例类型上运行 kafka 连接,最大任务为 2 . 我计划从制作人那里放很多东西,这些制作人将使用Kafka connect将记录放入ElastciSearch中。

重放意味着每秒 10000 条记录。

记住这一点,我应该如何创建 卡夫卡连接 .

例如

  1. 需要多少任务来处理这个问题,以便记录可以更快地进入 ES?

  2. 2 个 EC2 实例是否足以满足此负载,还是我需要更多?

  3. 为一个 EC2 实例创建多少个任务是好的?

  4. 拥有一个更大的 EC2 更好,或者拥有多个具有较小实例的 EC2 更好?

  5. 我如何使用 Kafka 连接确认所有记录都从 Kafka 主题到 ES

如何对我的卡夫卡连接性能进行基准测试?

到目前为止,我没有使用任何模式注册表.

请建议

我有 2 个 EC2 实例

因此,您只能运行 2 个工作线程。添加更多(在不同的可用区中(以获得更好的容错能力。您需要添加 CPU 和内存监控,以了解是否应添加更多实例。

在上述实例类型上运行 Kafka 连接,最大任务为 2 。

您最多可以拥有与输入主题分区一样多的任务。

每秒 10000 条记录

卡夫卡当然可以应付。需要单独对 ES 索引器进行基准测试。

我如何使用 Kafka 连接确认所有记录都从 Kafka 主题到 ES

您将监视使用者组滞后,与任何其他使用者任务相同

拥有一个更大的 EC2 更好,或者拥有多个具有较小实例的 EC2 更好

"更好"是相对的。如果您希望性能高于成本,请选择更大的实例并分配更多的堆空间。

相关内容

  • 没有找到相关文章

最新更新