MQ的入门指南

消息队列(Message Queue,简称 MQ)是阿里巴巴集团中间件技术部自主研发的专业消息中间件。

也就是说他只是一个中间商,我们将消息提交到阿里云上面,然后由阿里云的MQ组件给我们将消息分发。

实现逻辑:

我们通过accessId,secretKey和mnsEndpoint来建立与阿里云的连接,然后将我们的数据上传到阿里云上,数据主要有两种方式:一个是订阅消息(Topic),一个是队列消息(Queue),然后由阿里云对我们的消息进行分发。

两种方式的区别:

功能实现:

1.检测提供信息是否正确,也就是输入相应的信息进行连接测试。

 

 MNSMQConnection connection = new MNSMQConnection();
    connection.setAccessId(“XXXXX”);
    connection.setSecretKey("XXXXXX");
    connection.setMnsEndpoint(''XXXXXX");
    try {
      connection.getQueue("12121");
      // 测试成功才能添加或修改
      return mqDao.save(MQConverter.convertP(mq));
    } catch (Exception e) {
      e.printStackTrace();
      return ActionResult.fail(e.getMessage());
    }

 

 

2.查看这个账户里面有多少个主题

 

CloudAccount cloudAccount = new CloudAccount("XXXXXXX","XXXXXXX", "XXXXXX");
    MNSClient mnsClient = cloudAccount.getMNSClient();
 PagingListResult<TopicMeta> topics = mnsClient.listTopic("", "", 100); 
System.out.println("主题数量:"+topics.getResult().size()); 
for (TopicMeta topic : topics.getResult()) 
{ System.out.println(topic.getTopicName()); }

 

 

3.查看这个账户里面有多少队列

 

CloudAccount cloudAccount = new CloudAccount("XXXX","XXXX", "XXXXX");
    MNSClient mnsClient = cloudAccount.getMNSClient();
    PagingListResult<QueueMeta> queues = mnsClient.listQueue("", "", 100);
    System.out.println("消息队列的数量:"+queues.getResult().size());
    for (QueueMeta queue : queues.getResult()) {
      System.out.println(queue.getQueueName());
    }

 


4.查看队列里面的消息数量

 

 

 

CloudQueue cloudQueue = mnsClient.getQueueRef(queues.getResult().get(0).getQueueName());
    if (cloudQueue != null) {
      List<Message> messages = cloudQueue.batchPeekMessage(10);
      if (messages != null) {
        System.out.println("消息数");
      }
    }


最近由我写mq的控制台,所以写下来,上面的XXX是实例,真实的分别为accessId,secretKey,mnsEndpoint,因为是公司的相关信息,就不贴出来了。

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值