zoukankan      html  css  js  c++  java
  • Kafka生产者-重要参数

    1.acks

    决定分区中有多少副本收到这条消息,生产者才会认为这条消息成功写入

    有三种类型的值(String):

    • acks=1,默认值,只要leader写入成功即返回成功响应(折中方案)
    • acks=0,不需要等待服务端响应,可以达到最大吞吐量(其他配置相同条件下)
    • acks=-1或all,等待ISR中所有副本成功写入消息才能返回成功响应,可靠性最高

    2.max.request.size

    单条消息的最大值,默认值为1048576B,即1MB,会涉及到其他参数

    3.retries和retry.backoff.ms

    retries配置生产者重试次数,默认值为0

    retry.backoff.ms默认值为100,设定两次重试之间的时间间隔,避免无效的频繁重试

    4.compression.type

    指定消息压缩方式,默认值为"none",还可以配置"gzip"、"snappy"和"lz4",使用时间换空间的方式,如果对时延有一定要求,不推荐对消息进行压缩

    5.connections.max.idel.ms

    空连接超时限制

    6.linger.ms

    指定生产者发送ProducerBatch之前等待ProducerRecord加入ProducerBatch的时间,默认为0,增大该参数会增加消息延迟,但是能提升一定的吞吐量

    7.receive.buffer.bytes

    设置socket接收消息缓冲区的大小,默认值为32768B,即32KB,如果设置为-1,使用操作系统的默认值

    8.send.buffer.bytes

    设置socket发送消息缓冲区的大小,默认值为131072B,即128KB,如果设置为-1,使用操作系统的默认值

    9.request.timeout.ms

    设置Producer等待请求响应的最长时间,默认值为30000(ms)

    该参数需要比broker端参数replica.lag.time.max.ms的值大,可以减少因客户端重试而引起的消息重复的概率

  • 相关阅读:
    Top 10 Product Manager Skills To Boost Your Resume In 2021
    大数据知识梳理
    B端产品如何设计权限系统?
    华三盒式交换机MAC、ARP、Route性能表项参数查询
    中了传说中的挖矿病毒
    SqlServer 2019 事务日志传送
    docker中生成的pdf中文是方框的解决方案
    The Live Editor is unable to run in the current system configuration
    2021 面试题大纲
    五分钟搞定Docker安装ElasticSearch
  • 原文地址:https://www.cnblogs.com/jordan95225/p/13387990.html
Copyright © 2011-2022 走看看