开发者社区> 问答> 正文

第一题每个topic提供一个消费组还是总共一个消费组?

第一题每个topic提供一个消费组还是总共一个消费组?可不可以自己设置消费组?

展开
收起
wishworld 2016-06-22 19:11:27 11019 0
10 条回答
写回答
取消 提交回答
  • 回 23楼lovelyj的帖子
    一个consumer订阅多个topic,拿到所有的消息之后,是要用topic属性区分出这些消息吗?然后怎么做~~~
    2016-06-28 23:46:16
    赞同 展开评论 打赏
  • 回 14楼lovelyj的帖子
    你一个consumer同时订阅多个topic呀,我如果再把demo写详细点。答案都写出来,你们就不需要写代码了呀,哈哈
    2016-06-28 21:36:19
    赞同 展开评论 打赏
  • 回 20楼玄弟的帖子
    一个consumer同时订阅3个topic的话,应该三个topic的数据都会拿到吧,那怎么区分天猫和淘宝的订单~
    2016-06-28 21:34:12
    赞同 展开评论 打赏
  • 回 1楼玄弟的帖子
    这个一个是啥呀?每个topic提供一个消费组还是总共一个消费组?
    2016-06-25 19:01:29
    赞同 展开评论 打赏
  • 回 5楼玄弟的帖子
    可是jstorm-rocket-mq中不就是一个group id下的一个topic对应一个consumer实例么。

    -------------------------

    回 22楼玄弟temp的帖子
    嗯,我现在完全明白了。。。demo足够详细了,不能再详细了。。。。
    2016-06-24 20:19:56
    赞同 展开评论 打赏
  • 回 3楼玄弟的帖子
    我用的是DefaultMQPullConsumer,但是这个类好像每个消费组只能创建一个对象,我想要每个主题对应于一个DefaultMQPullConsumer,就是必须要有三个消费组,除了给的一个消费组,我可以自己再创建两个吗?或者能不能每个主题都给一个消费组,再或者有没有其他的办法

    -------------------------

    回 16楼cmptmn的帖子
    非常感谢你的回答
    2016-06-24 20:03:41
    赞同 展开评论 打赏
  • Re第一题每个topic提供一个消费组还是总共一个消费组?
    额,对于每个topic都建立一个spout,这样不行吗?

    -------------------------

    回 10楼cmptmn的帖子
    每个spout里 都新建一个DefaultMQPullConsumer对象 不行么?分别subscribe不同的topic
    2016-06-24 16:08:29
    赞同 展开评论 打赏
  • Re第一题每个topic提供一个消费组还是总共一个消费组?
    也就是说一个topic只能启一个spout,是吗?这样性能调整会受到限制,这个可是性能挑战赛呀,这种限制合理吗?

    -------------------------

    Re第一题每个topic提供一个消费组还是总共一个消费组?
    噢,刚刚才开始使用RocketMQ,对它了解不深。我是用DefaultMQPullConsumer的,发现用同一个consumerGroup创建多个DefaultMQPullConsumer对象会报错:
    Caused by: com.alibaba.rocketmq.client.exception.MQClientException: The consumer group[raceConsumerGroup] has been created before, specify another name please.
    See github.com/alibaba/RocketMQ/issues/40 for further details.

    请问使用Pull方式拉RocketMQ的消息有哪个类可以使用同一个consumerGroup同时创建多个对象的?我想创建多个对象,每一个分别对应一个Topic中的一个MessageQueue来用Pull方式拉消息。

    -------------------------

    Re第一题每个topic提供一个消费组还是总共一个消费组?
    所以我才得出结论要不每个Topic只启一个spout用DefaultMQPullConsumer对象来拉消息,要不就用不同的consumerGroup创建多个DefaultMQPullConsumer对象同时来拉消息。

    -------------------------

    Re第一题每个topic提供一个消费组还是总共一个消费组?
    不是不行,只是不如每个MessageQueue分别用一个DefaultMQPullConsumer对象Pull拉消息的性能好。这个我做过测试了。

    -------------------------

    Re第一题每个topic提供一个消费组还是总共一个消费组?
    亲,一个Topic有多个MessageQueue(消息队列)的。

    -------------------------

    Re第一题每个topic提供一个消费组还是总共一个消费组?
    hi,分析了一下RocketMQ的客户端代码发现“com.alibaba.rocketmq.client.exception.MQClientException: The consumer group[raceConsumerGroup] has been created before, specify another name please”异常的原因是:DefaultMQPullConsumerImpl在执行start方法时,向一个MQClientManager对象请求用consumerGroup对自己进行注册,并校验是否已经用相同的consumerGroup在MQClientManager对象中注册过了。如果已经注册过了就抛出上面的异常。而MQClientManager实例是个“单例”,在JVM内是全唯一的。所以在JVM内用同一个consumerGroup只能使用同一个DefaultMQPullConsumer对象,不能同时使用多个DefaultMQPullConsumer对象。但在不同的JVM内是可以用相同的consumerGroup分别创建并使用DefaultMQPullConsumerImpl对象的。所以在使用DefaultMQPullConsumerImpl时要用类变量进行引用,保证在整个JVM内共享同一个DefaultMQPullConsumerImpl实例如:static DefaultMQPullConsumer singleDefaultMQPullConsumer = new DefaultMQPullConsumer("raceConsumerGroup")

    -------------------------

    Re第一题每个topic提供一个消费组还是总共一个消费组?
    RocketMQ的文档少得可怜,遇到问题要自己翻代码才能解决。Jstorm的文档也是少得可怜幸好可以借鉴Storm的。阿里要想自己的开源项目象Kafka、Storm(Heron)、Hbase那样广泛被外界使用文档恐怕还要多下工夫呀!
    2016-06-24 11:28:20
    赞同 展开评论 打赏
  • Re第一题每个topic提供一个消费组还是总共一个消费组?
    这是不是意味着只能使用一个consumer来订阅所有topic?为什么要这样限制呢?

    -------------------------

    回 17楼cmptmn的帖子
    66666, 同感 确实觉得rocketmq文档还差很多,jstorm的基本都查了storm的文档
    2016-06-23 21:21:43
    赞同 展开评论 打赏
  • 一个

    -------------------------

    回 2楼(qhpxy) 的帖子
    consumer的维度是topic,不同topic可以用相同的consumer,这个在消费过程中部相互影响。每支队伍的consumer规定好,有一定好处。第一次你用这个consumer消费了topic之后,第二次消费我们会根据提供给你的consumer来重置消费点。这样你就可以再次利用这个consumer消费和上次同样的数据。

    -------------------------

    为什么一个topic 只能启动一个spout呢?

    -------------------------

    参考下 https://github.com/alibaba/jstorm/tree/master/jstorm-utility/jstorm-rocket-mq

    -------------------------

    我们到时候只能给一个RocketMq 消费组,你需要用这一个消费组消费这三个topic。也就是说你新建一个consumer实例,这个consumer实例应该用这个消费组同时订阅三个topic;如果你新建两个consumer实例,这个两个consumer实例都应该用这个消费组同时订阅三个topic。记得每个jvm进程,只能保证新建一个consumer实例……

    2016-06-23 09:22:47
    赞同 展开评论 打赏
滑动查看更多
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载