美文网首页
spring.cloud.stream.default.cons

spring.cloud.stream.default.cons

作者: ZT5250Z | 来源:发表于2018-05-11 11:15 被阅读60次

    问题


    最近公司项目中遇到一个问题,就是kafka客户端的消费能力低的问题,项目中是在spring cloud stream中整合kafka使用的,由于消费能力低,导致单条消息处理时间比较长,在压测的时候,大量消息堆积,引发了一系列问题。

    处理过程


    由于使用的spring cloud微服务框架,国内大部分网站上都搜索不到有用的信息,只能寄希望于官网文档(spring真是太庞大了,眼花缭乱),碍于英文能力比较弱,只能大体看看,找到了相关配置说明,在spring cloud stream中的yml配置文件中添加了如下配置,希望能够并发处理kafka的消息,提高客户端的消费能力

    spring: 
        cloud: 
            stream: 
                default: 
                    consumer: 
                        concurrency: 5
    

    但是,生活总是不能让你如意(依旧要保持微笑 ^_^ ),当启动stream微服务时,我在控制台输出了下列警告:
    The number of expected partitions was: 5, but 1 has been found instead.There will be 4 idle consumers
    从输出的内容上看,之前添加的配置应该是没有生效,这让我很困惑(千万只神兽"轻轻地"走过)

    解决问题


    经过多次百度以及google无果之后,无奈之下,在github上spring-cloud-stream-binder-kafka开源项目上提了一个issue
    最后皇天不负有心人,终于得到了有用的答复,还需要在添加一个配置才能生效:
    spring.cloud.stream.kafka.binder.autoAddPartitions=true
    官方参考文档

    相关文章

      网友评论

          本文标题:spring.cloud.stream.default.cons

          本文链接:https://www.haomeiwen.com/subject/ddxfdftx.html