Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kafka cluster can't published message #76

Closed
a641545621 opened this issue Jan 12, 2018 · 4 comments
Closed

Kafka cluster can't published message #76

a641545621 opened this issue Jan 12, 2018 · 4 comments

Comments

@a641545621
Copy link

配置了3台kafka集群 x.UseKafka("x.x.x.x:9092,x.x.x.x:9093,x.x.x.x:9094"); 生产者和消费者都是一样的kafka配置 不同的程序 链接的数据库也不同 关闭其中一台kafka后 生产者有时候发送消息会失败 cap.published表里状态为 Processing 当启动刚刚关闭的Kafka后 消息能重新发送出去 但是 消费者接收不到..
1.生产者偶尔不能正常发送消息出去
2.重启服务后 消息发送成功后 不能监听到消息

@yang-xiaodong
Copy link
Member

yang-xiaodong commented Jan 13, 2018

如果生产者和消费者都是一个实例的话,你可以遇到了我最近刚发现的之前对Kafka一个概念理解错误的一个潜在bug。

手动提交模式,假如消息队列里有10条消息,拉取第一条后存数据库失败,第二次拉取会拉取到第二条消息,只要你的consumer没有触发rebalance,即使你没有ACK提交,第一条消息再也拉不到了。

你这里的情况应该是在先ACK到了后面的消息,导致之前的消息取不到了。你可以对应看一下是不是我说的这种情况呢?

如果是这个问题,稍后我会想办法处理这种情况。。

发消息发布出去的问题,我需要检查确认一下

@a641545621
Copy link
Author

嗯 是你说的这样子 只是有点疑问就是 消息第一次发送失败 后面重新以新的消息再发送出去 应该是按最新消息来处理把?这样接收最新消息的话应该就正常了.

@yang-xiaodong
Copy link
Member

如果是发送端新发出去,是按照新消息处理的,所以消费端一般要保证幂等性

@yang-xiaodong
Copy link
Member

Closed!
v2.1.3 has fixed kafka consumer database store failed may caused message loss bug.

@yang-xiaodong yang-xiaodong changed the title 配置kafka集群 有时候数据发不出去 Kafka cluster can't published message Mar 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants