开发者社区 > 云原生 > 正文

基线auto-detect 去消费灰度消息,这个地方是有解决 灰度消息丢失和灰度消息重复消费的问题

基线auto-detect 去消费灰度消息,这个地方是有解决 灰度消息丢失和灰度消息重复消费的问题吗?

展开
收起
函数计算小白 2023-08-03 10:42:34 77 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    基于auto-detect算法的消费组不会解决灰度消息的丢失和重复消费问题。

    主要原因是:

    auto-detect消费组是基于最新消费进度来"检测"订阅关系,不具备消费进度恢复能力。

    auto-detect消费组无法保证消息的顺序消费,可能出现消息重排序问题。

    auto-detect消费组无法有效感知消息是否成功消费,造成消息丢失。

    不同消费组可能会同时获取到相同的消息,造成消息重复消费。

    因此,如果你的用例需要:

    顺序消费消息
    消息不丢失且只消费一次
    有容错能力,能处理消费失败的情况
    那么auto-detect算法是不足以满足要求的。

    而且对于灰度消息来说,顺序和精确一次消费更为重要。

    为了解决这些问题,建议使用Broker层面支持的订阅组解决方案,例如:

    RocketMQ的消息订阅组
    Kafka的消费者组
    这些解决方案基于Broker会为每个消费组维护独立的消费进度记录。

    如果消费失败,可以恢复消费;消息是有序的,不会重复消费。

    2023-08-03 19:51:30
    赞同 展开评论 打赏
  • 这一块有解决的,demo文件:https://github.com/aliyun/alibabacloud-microservice-demo/tree/master/mse-simple-demo

    我们可以一起验证下。

    此答案来自钉钉群“MSE微服务引擎用户交流群"

    2023-08-03 18:45:03
    赞同 展开评论 打赏
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

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