V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
phttc
V2EX  ›  程序员

Kafka 客户端空闲时候流量偏大

  •  
  •   phttc · 2020-06-16 17:08:28 +08:00 · 1983 次点击
    这是一个创建于 1646 天前的主题,其中的信息可能已经有所发展或是发生改变。

    场景如下:

    A 机器上开了一个 kafka 集群,3 个节点。(除 advertised.listeners 外,其余均按照 kafka 的 quickstart 配置)

    B 机器上用 librdkafka 写的客户端(照抄官方提供的 demo )。

    分配 100 个 topic (已经提前写入一些数据),300 个消费者分成 2 个消费 groupid 平均的连 A 的集群

    每个消费者进程 不管是只消费一个 topic,还是消费 100 个 topic,在消费完成,空闲的时候查看 A 机器与 B 机器的流量。

    A 机器 进流量 1.3Mb/s 出流量 3Mb/s

    疑问:为什么空闲状态下 客户端会占用那么大的带宽?如果消费者和生产者分布在外网,kafka 服务器外网带宽只有 30M 的话,全空闲情况下只能支撑 3000 个客户端?如果有数据,岂不是只能 1000 个都不到了?

    是我的使用场景有问题吗?还是哪里可以修改配置?

    4 条回复    2020-06-17 03:59:32 +08:00
    Ariver
        1
    Ariver  
       2020-06-16 18:01:52 +08:00
    抓包看一下。
    另外像 kafka,redis 这种默认的使用场景都是局域网吧
    tzhhahaha
        2
    tzhhahaha  
       2020-06-16 18:26:09 +08:00
    看一下线程堆栈都是在干嘛? 一般空闲应该就是 getTopicMetadata 之类的, 没有那么夸张
    hustlibraco
        3
    hustlibraco  
       2020-06-16 18:54:48 +08:00
    你确定是 kafka 产生的流量吗……
    fannas
        4
    fannas  
       2020-06-17 03:59:32 +08:00 via Android
    作为消息中间件,你就给 30m 带宽? 如果感觉难度比较高的话,建议买 confluent 订阅
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1744 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:33 · PVG 00:33 · LAX 08:33 · JFK 11:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.