cn-rmq 1.0.1 发布 基于可靠消息的分布式事务解决方案

栏目: 软件资讯 · 发布时间: 4年前

内容简介:RMQ(reliable-message-queue)是基于可靠消息的分布式事务解决方案。 中文文档 中文文档地址:https://www.showdoc.cc/rmq RMQ对接示例: https://gitee.com/NuLiing/reliable-message-samples https://github....

RMQ(reliable-message-queue)是基于可靠消息的分布式事务解决方案。

中文文档

RMQ对接示例:

框架定位

  • RMQ本身不生产消息队列,只是消息的搬运工。
  • RMQ框架提供消息预发送、消息发送、消息确认、消息恢复、消息管理等功能,结合成熟的消息中间件,解决分布式事务,达到数据最终一致性。

业务系统对接RMQ

详细对接说明请查看《快速入门》和《对接示例说明

maven依赖

在业务系统的pom文件中引入rmq-api最新版本依赖:

# 中央仓库: https://search.maven.org/search?q=rmq-api
<dependency>
  <groupId>com.gitee.nuliing</groupId>
  <artifactId>rmq-api</artifactId>
  <version>${最新稳定版本}</version>
</dependency>

在业务代码中引入RMQ的Dubbo服务

import org.apache.dubbo.config.annotation.Reference;
import com.cn.rmq.api.service.IRmqService;

@Reference
private IRmqService rmqService;

编写消息发送方业务方法

public void doBusiness() {
        // 自定义消息队列名称
        String queue = "test.queue";
        // 消息内容, 如果传输对象,建议转换成json字符串
        String messageContent = "......";

        // 调用RMQ,预发送消息
        String messageId = rmqService.createPreMessage(queue, messageContent);

        // 执行业务
        ...
        ...

        // 异步调用RMQ,确认发送消息
        RpcContext.getContext().asyncCall(() -> rmqService.confirmAndSendMessage(messageId));
    }

编写消息消费方业务方法

public void handleMsg(RmqMessage msg) {
        try {
            String messageContent = msg.getMessageBody();

            // 执行业务
            ...
            ...

            // 通知RMQ消息消费成功
            // 如果使用的是RMQ的directSendMessage,则无需通知
            if (StringUtils.isNotBlank(msg.getMessageId())) {
                rmqService.deleteMessageById(msg.getMessageId());
            }
        } catch (Exception e) {
            ...
        }
    }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Scratch少儿趣味编程

Scratch少儿趣味编程

[ 日] 阿部和广 / 陶 旭 / 人民邮电出版社 / 2014-11 / 59.00元

Scratch 是麻省理工学院设计开发的一款编程工具,是适合少儿学习编程和交流的工具和平台,有中文版且完全免费。本书结合孩子们学习的语文、数学、科学、社会、音乐、体育等科目,手把手地教大家如何用Scratch 设计程序(如设计一个自动写作文的程序),配合各式卡通形象,通俗易懂,寓教于乐。麻省理工学院教授米切尔•瑞斯尼克作序推荐。 本书图文并茂,生动风趣,适合中小学生等初学者自学或在家长的帮助......一起来看看 《Scratch少儿趣味编程》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码