java - 当我使用 CuratorFrameworkFactory.newClient() 时,获取 KafkaConsumer 对于多线程访问错误是不安全的

标签 java multithreading apache-kafka apache-curator

我收到以下错误:

java.util.ConcurrentModificationException: KafkaConsumer is not safe for multi-threaded access

当我将其包含在我的代码中时:

CuratorFrameworkFactory.newClient()

我不明白是什么导致了错误。有帮助吗?

谢谢。

最佳答案

Kafka Javdocs 明确提到:

Kafka 消费者不是线程安全的。所有网络 I/O 都发生在进行调用的应用程序的线程中。确保多线程访问正确同步是用户的责任。不同步的访问将导致 ConcurrentModificationException。

更多详情请访问 http://kafka.apache.org/21/javadoc/org/apache/kafka/clients/consumer/KafkaConsumer.html#multithreaded

关于java - 当我使用 CuratorFrameworkFactory.newClient() 时,获取 KafkaConsumer 对于多线程访问错误是不安全的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53847066/

相关文章:

java - Spring:关闭 session 信息

java - 在 Java 中将谓词作为 lambda 返回

java - Spring MVC + Thymeleaf - 正确的上下文路径处理

C# - 如何将委托(delegate)传递给另一个方法?

c - 为什么 pthread_join 本身不会导致错误或死锁?

python - kafka-python ssl 支持 python < v2.7.9(无属性 'SSLContext')

java - 在 Groovy 中使用 Google-Reflection 会导致异常,而等效的 Java 代码可以工作

ios - CGPDFDocument线程

go - 使用 golang 将 DSA key 解析为 tls 配置对象

apache-kafka - ClickHouse JSON解析异常: Cannot parse input: expected ',' before