开发者社区 > 云原生 > 消息队列 > 正文

大佬们,请问一下,ones-client SDK 与rocketmq-client 有什么区别?

问题1:大佬们,请问一下,ones-client SDK 与rocketmq-client 有什么区别? 我看官方demo都是用的ones-client,我们项目之前都是用的 rocketmq-client? 问题2: 我用的rocketmq-client,发送延时消息时候,时间不能任意时间,只能传 delayTimeLevel ,是我的sdk版本低了吗?我看官方demo用ones-client是可以指定时间戳的,我的是4.9.5

展开
收起
真的很搞笑 2023-05-30 13:55:18 338 0
5 条回答
写回答
取消 提交回答
  • CSDN博客专家,51CTO博主专家,多知名企业认证讲师&签约作者&培训讲师,特邀作者等,华为云专家,资深测试开发专家,金牌面试官,职场面试培训及规划师。

    【回答】

    • 问题1,ones-client是阿里开源的一款消息队列客户端库,而RocketMQ-Client是阿里开源的一款消息队列中间件,提供了一系列消息队列相关的API和工具。因此,在使用上,ones-client和RocketMQ-Client有一些相似,但也存在一些差异。

    使用RocketMQ-Client发送消息时,可以直接使用RocketMQ提供的API来发送消息,也可以使用RocketMQ-Client提供的工具来发送消息。

    而ones-client提供了更加灵活的API和工具,可以更加方便地发送消息和进行消息管理。

    • 问题2,可能是你没有正确地使用RocketMQ-Client提供的API来发送消息。

    可以使用MessageExt类中的setSendTime方法设置消息的发送时间,使用setDelayTime方法设置消息的延时时间。

    如果你的setSendTime和setDelayTime方法都没有起作用,可能是你没有正确地初始化消息或者消息发送失败。

    2023-05-30 16:34:31
    赞同 1 展开评论 打赏
  • OnesClient SDK 是阿里巴巴内部使用的云原生消息队列服务 product 实现 RocketMQ 协议的客户端 SDK,而 RocketMQ-Client 是 Apache RocketMQ 官方提供的客户端 SDK。

    尽管两者都是基于 RocketMQ 协议实现的客户端 SDK,但是它们之间还是存在一些区别:

    1. 来源不同:OnesClient SDK 是阿里云在运营自身产品时开发的,主要用于支持阿里云 MQ 订阅和消费等基本操作,而 RocketMQ-Client 是 Apache RocketMQ 社区维护的官方客户端 SDK,支持更多的功能和应用场景。

    2. 功能不同:OnesClient SDK 支持的功能相对较少,只包括消息订阅和消费、消息发送、消息过滤等基本功能;而 RocketMQ-Client 不仅支持这些基本功能,还支持消息事务、延迟消息、顺序消息等高级特性,以及与 Spring 等框架的集成等。

    3. 发展方向不同:OnesClient SDK 的设计重点是支持阿里云 MQ 服务的各种特性,例如消息可靠性等级、可视化监控等,因此其发展方向更加倾向于云计算领域;而 RocketMQ-Client 主要面向企业级消息中间件领域,注重提供高性能、高可靠、易用性等特点。

    2023-05-30 16:01:52
    赞同 展开评论 打赏
  • 回答1:ons的是阿里云原来的定制版sdk。现在新业务建议都使用开源的sdk,是可以兼容的。 ,此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”

    2023-05-30 14:19:00
    赞同 展开评论 打赏
  • 天下风云出我辈,一入江湖岁月催,皇图霸业谈笑中,不胜人生一场醉。
    1. ones-client是RocketMQ的新一代Java客户端,是官方推荐的客户端。rocketmq-client是老版本的客户端,不再推荐使用。
    2. ones-client采用Netty重构,性能比rocketmq-client有较大提升。
    3. ones-client支持更丰富的消息类型,如批量消息、事务消息、定时消息等。rocketmq-client支持的消息类型较少。
    4. ones-client的API更简洁,学习曲线更低。
    2023-05-30 14:13:37
    赞同 展开评论 打赏
  • RocketMQ-Client:RocketMQ-Client 是 Apache RocketMQ 官方提供的 Java 客户端 SDK。

    NES-Client SDK 是阿里云提供的一套全新的事件流式数据访问 SDK,用于访问和操作阿里云的事件流服务

    2023-05-30 14:12:25
    赞同 展开评论 打赏

多个子产品线联合打造金融级高可用消息服务以及对物联网的原生支持,覆盖多行业。

相关产品

  • 云消息队列 MQ
  • 热门讨论

    热门文章

    相关电子书

    更多
    从 SDK 到编解码:视频直播架构解析 立即下载
    跨平台的云服务SDK需要什么 立即下载
    一个跨平台的云服务SDK需要什么 立即下载