2020越努力越幸运 2019-07-09 22:51 采纳率: 0%
浏览 2921

springboot结合kafka时0毫秒关闭消息生产者

自己在做springboot结合kafka的时候,运行消息生产者,结果console显示了生产者的相关配置以及提示生产者在0毫秒内关闭了消息生产者,然后生产者发送消息失败。想请问下各位大佬这到底是是配置文件的问题还是消息生产者发送消息的时候出现了问题啊。
消息发送者代码:

@Component
@EnableKafka
public class MessageSender
{

@Autowired
private  KafkaTemplate<String,String> kafkaTemplate;
//private static final MessageSender sender=new MessageSender();

/* *
* kafka客户端发送消息
* @param topic 主题
* @param message 消息内容
* @return*/

public boolean sendMessage(String topic,String message)
{
    try {
        System.out.println("topic"+topic+"message"+message);
        kafkaTemplate.send(topic, message);

    }
    catch (Exception e)
    {
        return false;
    }
    return  true;
}

}

控制台具体信息如下:
2019-07-09 22:43:34.008 INFO 7916 --- [nio-8080-exec-1] o.a.k.clients.producer.ProducerConfig : ProducerConfig values:
acks = 1
batch.size = 65536
bootstrap.servers = [192.168.2.2:9092]
buffer.memory = 524288
client.id =
compression.type = none
connections.max.idle.ms = 540000
enable.idempotence = false
interceptor.classes = null
key.serializer = class org.apache.kafka.common.serialization.StringDeserializer
linger.ms = 0
max.block.ms = 60000
max.in.flight.requests.per.connection = 5
max.request.size = 1048576
metadata.max.age.ms = 300000
metric.reporters = []
metrics.num.samples = 2
metrics.recording.level = INFO
metrics.sample.window.ms = 30000
partitioner.class = class org.apache.kafka.clients.producer.internals.DefaultPartitioner
receive.buffer.bytes = 32768
reconnect.backoff.max.ms = 1000
reconnect.backoff.ms = 50
request.timeout.ms = 30000
retries = 0
retry.backoff.ms = 100
sasl.jaas.config = null
sasl.kerberos.kinit.cmd = /usr/bin/kinit
sasl.kerberos.min.time.before.relogin = 60000
sasl.kerberos.service.name = null
sasl.kerberos.ticket.renew.jitter = 0.05
sasl.kerberos.ticket.renew.window.factor = 0.8
sasl.mechanism = GSSAPI
security.protocol = PLAINTEXT
send.buffer.bytes = 131072
ssl.cipher.suites = null
ssl.enabled.protocols = [TLSv1.2, TLSv1.1, TLSv1]
ssl.endpoint.identification.algorithm = null
ssl.key.password = null
ssl.keymanager.algorithm = SunX509
ssl.keystore.location = null
ssl.keystore.password = null
ssl.keystore.type = JKS
ssl.protocol = TLS
ssl.provider = null
ssl.secure.random.implementation = null
ssl.trustmanager.algorithm = PKIX
ssl.truststore.location = null
ssl.truststore.password = null
ssl.truststore.type = JKS
transaction.timeout.ms = 60000
transactional.id = null
value.serializer = class org.apache.kafka.common.serialization.StringDeserializer

2019-07-09 22:43:34.019 INFO 7916 --- [nio-8080-exec-1] o.a.k.clients.producer.KafkaProducer : [Producer clientId=producer-1] Closing the Kafka producer with timeoutMillis = 0 ms.
2019-07-09 22:43:34.040 DEBUG 7916 --- [nio-8080-exec-1] o.s.b.w.s.f.OrderedRequestContextFilter : Cleared thread-bound request context: org.apache.catalina.connector.RequestFacade@2e251d9f
2019-07-09 22:43:34.077 DEBUG 7916 --- [nio-8080-exec-2] o.s.b.w.s.f.OrderedRequestContextFilter : Bound request context to thread: org.apache.catalina.connector.RequestFacade@2e251d9f
2019-07-09 22:43:34.112 DEBUG 7916 --- [nio-8080-exec-2] o.s.b.w.s.f.OrderedRequestContextFilter : Cleared thread-bound request context: org.apache.catalina.connector.RequestFacade@2e251d9f


  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-10 18:38
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这个问题可能有多种原因导致,以下是一些常见的原因和解决方案:

    1. 生产者配置问题

      • 确保你的 kafka.properties 文件中设置了正确的 acks(确认次数),例如设置为 acks=1
      • 检查是否正确设置了 batch.sizebuffer.memorymax.request.size 参数。
      • 配置连接池的大小(connections.max.idle.ms)。
      • 确认 bootstrap.servers 包含正确的主机名和端口号。
    2. 生产者实例状态

      • 如果生产者实例的状态不正确,可能导致无法正常启动或发送消息。检查生产者实例的状态,确保它处于可操作的状态(通常是 STARTINGRUNNING)。
      • 检查生产者实例的健康状况,可以通过查看其日志来确定。
    3. 消息发送错误

      • 检查生产者发送的消息是否包含任何错误(例如:编码错误、消息格式错误等)。使用 kafka-console-producer.sh 命令查看生产者输出的日志,以了解具体的错误信息。
      • 使用 kafka-topics.sh 命令查看主题的分区数量和消息数量,以确保没有超过最大分区数或已超量的消息。
    4. 网络问题

      • 确认生产者实例与 Kafka Server 的连接是否稳定。如果生产者实例无法与 Kafka Server 建立连接,可能会导致无法发送消息。

    解决这些问题的方法取决于具体的原因。你可以根据上述建议进行测试,并逐步排除可能的问题。如果你能提供更多的详细信息,比如生产者实例的具体配置,可能有助于更准确地定位问题所在。

    评论

报告相同问题?

悬赏问题

  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?
  • ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
  • ¥15 texstudio的问题,
  • ¥15 spaceclaim模型变灰色
  • ¥15 求一份华为esight平台V300R009C00SPC200这个型号的api接口文档
  • ¥15 字符串比较代码的漏洞
  • ¥15 欧拉系统opt目录空间使用100%
  • ¥15 ul做导航栏格式不对怎么改?