使用阿里云RocketMQ发送json字符串到线上

 MQClient mqClient = new MQClient(
                // 设置HTTP接入域名(此处以公共云生产环境为例)
                nameServer,
                // AccessKey 阿里云身份验证,在阿里云服务器管理控制台创建
                accessKey,
                // SecretKey 阿里云身份验证,在阿里云服务器管理控制台创建
                secretKey
        );



        // 获取Topic的生产者
        MQProducer producer;
        if (StringUtil.isNotBlank(instanceId)) {
            producer = mqClient.getProducer(instanceId, topic);
        } else {
            producer = mqClient.getProducer(topic);
        }

        try {
            // 发送消息
            TopicMessage pubMsg;
            // 普通消息
            pubMsg = new TopicMessage();
            logger.debug("jsonStr:::"+jsonStr);
            pubMsg.setMessageBody(JSON.toJSONBytes(jsonStr));
            pubMsg.setMessageTag(MessageTag);
            // 设置属性
            pubMsg.getProperties().put("Content-Type", "application/json");
            // 设置KEY
            String MessageKey = DateUtil.getNowDate(DateUtil.DFT_NO_BLANK);

            pubMsg.setMessageKey(MessageKey);
            // 同步发送消息,只要不抛异常就是成功
            TopicMessage pubResultMsg = producer.publishMessage(pubMsg);

            // 同步发送消息,只要不抛异常就是成功
            logger.debug(new Date() + " Send mq message success. Topic is:" + topic + ", msgId is: " + pubResultMsg.getMessageId()
                    + ", bodyMD5 is: " + pubResultMsg.getMessageBodyMD5());
        } catch (Throwable e) {
            // 消息发送失败,需要进行重试处理,可重新发送这条消息或持久化这条数据进行补偿处理
            logger.debug(new Date() + " Send mq message failed. Topic is:" + topic);
            e.printStackTrace();
            logger.error(e.getMessage(),e);
        }

        mqClient.close();

记录下第一次用阿里云的MQ对接信息

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋迟言说

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值