【问题标题】:Configurable delays in Kafka docker imageKafka docker 镜像中的可配置延迟
【发布时间】:2020-08-03 10:48:37
【问题描述】:

当消耗两个不同的 Kafka 事件时,我在代码中发现了一个竞争条件,100 次中有 99 次以“正确”的顺序到达。我已经修复了这个错误,我想证明它。

我愿意将Thread.sleep() 放在消费者代码上,但如果有一个本地 kafka 代理,我可以对其进行配置以针对不同的标准引入延迟,那就太好了。类似于 Mountebank 为您提供的 HTTP 服务,如果您遇到过的话。

我通过根据需要部署应用程序的 docker 映像以及 db/kafka/http 服务器 docker 映像来执行黑盒测试。有一个可配置的 docker Kafka 镜像会很棒,你知道吗?

提前致谢。

【问题讨论】:

    标签: docker apache-kafka performance-testing


    【解决方案1】:

    每个主要的 docker kafka 映像都可以针对任何 server.properties 配置进行配置。

    但是没有这样的服务器端设置可以全局影响每个副本的每个分区以使其消耗更长的时间

    如果你想要排序,那么你会使用一个主题,一个分区,或者用max.poll.records=1 将消费者线程互锁,并在另一个消费者运行时暂停一个消费者(这很可能会运行得很慢)

    有一个本地的 kafka 经纪人

    您不需要 Docker,尤其是在您使用 Spring 的 EmbeddedKafka 测试时

    【讨论】:

    • 也许在真实环境的孤立副本中测试这方面的要求太高了。这将是理想的,因为它会给我最大的信心,没有任何事情被忽视。还可以提出许多其他类似的测试场景。看看 Kafka 的测试工具如何开发会很有趣。感谢 EmbeddedKafka 的建议。
    猜你喜欢
    • 1970-01-01
    • 2020-11-04
    • 1970-01-01
    • 2018-03-29
    • 1970-01-01
    • 1970-01-01
    • 2018-06-19
    • 1970-01-01
    • 2022-11-01
    相关资源
    最近更新 更多