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

消息队列RocketMQ版如何通过调用SDK来订阅消息?

消息队列RocketMQ版如何通过调用SDK来订阅消息?

展开
收起
Lee_tianbai 2021-01-01 14:53:08 972 0
1 条回答
写回答
取消 提交回答
  • 消息发送成功后,需要启动消费者来订阅消息。下文以调用 TCP Java SDK 为 例说明如何订阅消息。 1. 调用 TCP Java SDK 订阅消息。 您可以运行以下示例代码来启动消费者,并测试订阅消息的功能。请按照说明正 确设置相关参数。

    import com.aliyun.openservices.ons.api.Action;
    import com.aliyun.openservices.ons.api.ConsumeContext;
    import com.aliyun.openservices.ons.api.Consumer;
    import com.aliyun.openservices.ons.api.Message;
    import com.aliyun.openservices.ons.api.MessageListener;
    import com.aliyun.openservices.ons.api.ONSFactory;
    import com.aliyun.openservices.ons.api.PropertyKeyConst;
    import java.util.Properties;
    public class ConsumerTest {
    public static void main(String[] args) {
    Properties properties = new Properties();
    // 您在控制台创建的 Group ID
    properties.put(PropertyKeyConst.GROUP_ID, "XXX");
    // 鉴权用 AccessKeyId,在阿里云服务器管理控制台创建
    properties.put(PropertyKeyConst.AccessKey, "XXX");
    // 鉴权用 AccessKeySecret,在阿里云服务器管理控制台创建
    properties.put(PropertyKeyConst.SecretKey, "XXX");
    // 设置 TCP 接入域名,进入控制台的实例详情页面,在页面上方选择实例后,在实例信息中的“获取
    接入点信息”区域查看
    properties.put(PropertyKeyConst.NAMESRV_ADDR,"XXX");
    Consumer consumer = ONSFactory.createConsumer(properties);
    consumer.subscribe("TopicTestMQ", "*", new MessageListener() {
    public Action consume(Message message, ConsumeContext context) {
    System.out.println("Receive: " + message);
    return Action.CommitMessage;
    }
    });
    consumer.start();
    System.out.println("Consumer Started");
    }
    }
    
    1. 查看消息订阅是否成功。 完成上述步骤后,您可以在控制台查看消费者是否启动成功,即消息订阅是否 成功。 a. 在控制台左侧导航栏,单击 Group 管理。 b. 找到要查看的 Group ID,单击该 Group ID 所在行操作列的订阅关系。 如果是否在线显示为是,且订阅关系一致,则说明订阅成功。否则说明订阅 失败。
    2021-01-05 14:24:00
    赞同 展开评论 打赏

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

相关产品

  • 云消息队列 MQ
  • 相关电子书

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