cn-ben

基于最大努力通知的分布式事务解决方案
授权协议 Apache
开发语言 Java
所属分类 服务器软件、 分布式应用/网格
软件类型 开源软件
地区 国产
投 递 者 长孙逸仙
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

BEN(best-effort-notify)是基于最大努力通知的分布式事务解决方案。

中文文档


业务系统对接BEN

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

maven依赖

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

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

发送通知

步骤:

  • 构造通知参数BenNotify
  • 往消息队列发送通知对象(队列名:notify.queue,已定义为静态变量BenNotify.QUEUE

流程说明

假设两个业务系统的两个业务AB。基于BEN实现分布式事务流程如下:

  1. 上层业务系统在完成业务处理之后,向消息中间件发送通知消息。
  2. BEN系统监听通知消息队列,监听到通知消息后添加通知记录到数据库。
  3. 根据系统配置的通知时间,设置通知任务执行时间,放入DelayQueue
  4. 通知任务达到执行时候后,发送Http请求下层业务系统
  5. 添加通知日志到数据库。
  • Error response from daemon: Get https://registry.cn-hangzhou.aliyuncs.com/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) 重启docker后好了。dns指

  •   af 公用荷兰语 af-ZA 公用荷兰语 - 南非 sq 阿尔巴尼亚 sq-AL 阿尔巴尼亚 -阿尔巴尼亚 ar 阿拉伯语 ar-DZ 阿拉伯语 -阿尔及利亚 ar-BH 阿拉伯语 -巴林 ar-EG 阿拉伯语 -埃及 ar-IQ 阿拉伯语 -伊拉克 ar-JO 阿拉伯语 -约旦 ar-KW 阿拉伯语 -科威特 ar-LB 阿拉伯语 -黎巴嫩 ar-LY 阿拉伯语 -利比亚 ar-MA 阿拉伯

  • 转自:http://blog.sina.com.cn/s/blog_5f92cf870100fiob.html   杜彬(Ben Duffy)的故事: 这家公司的顾问式销售方法来自一个故事(这个故事发生在上世纪60年代的美国,Kevin注),这个故事讲述了一位名叫杜彬(Ben Duffy)的销售人员的经历,以及一个不仅改变了杜彬、而且改变了整个销售行业的发现。 杜彬是一位非常成功的销售人员,为纽约

 相关资料
  • 本文向大家介绍详解SpringBoot基于Dubbo和Seata的分布式事务解决方案,包括了详解SpringBoot基于Dubbo和Seata的分布式事务解决方案的使用技巧和注意事项,需要的朋友参考一下 1. 分布式事务初探 一般来说,目前市面上的数据库都支持本地事务,也就是在你的应用程序中,在一个数据库连接下的操作,可以很容易的实现事务的操作。 但是目前,基于SOA的思想,大部分项目都采用微服务

  • 主要内容:1.2PC,2.三阶段提交(3PC),3.补偿事务(TCC),4.本地消息表,5.消息事务,6.最大努力通知,7.Sagas 事务模型1.2PC 两阶段提交 mysql是通过日志系统完成事务的。就是两阶段提交:undolog和binlog的两阶段提交。 两阶段协议可以用于单机集中式系统,由事务管理器协调多个资源管理器;也可以用于分布式系统,由一个全局的事务管理器协调各个子系统的局部事务管理器完成两阶段提交。 第一阶段:投票阶段 1.协调者写命令进写入日志 2.协调者发一个prepare

  • 问题内容: 我有一个非常基本的问题。 以下代码无法编译(假设Apple扩展了Fruit): 在阅读有关为什么不阅读的内容时,我理解的是单词,但不理解概念:)。 假设第一个Fruit不是抽象类。我知道,由于我们正在处理多个子类型,所有这些子类型都扩展了Fruit。据推测,由于我们无法分辨出确切的水果类型,因此我们无法在集合中放入任何东西。有几件事我不明白: 1)显然我们不知道是哪个水果让我感到困惑。

  • ShardingSphereTransactionManager SPI 名称 详细说明 ShardingSphereTransactionManager 分布式事务管理器 已知实现类 详细说明 XAShardingSphereTransactionManager 基于 XA 的分布式事务管理器 SeataATShardingSphereTransactionManager 基于 Seata 的分

  • ShardingSphere-Proxy 接入的分布式事务 API 同 ShardingSphere-JDBC 保持一致,支持 LOCAL,XA,BASE 类型的事务。 XA 事务 ShardingSphere-Proxy 原生支持 XA 事务,默认的事务管理器为 Atomikos。 可以通过在 ShardingSphere-Proxy 的 conf 目录中添加 jta.properties 来定

  • 通过 Apache ShardingSphere 使用分布式事务,与本地事务并无区别。 除了透明化分布式事务的使用之外,Apache ShardingSphere 还能够在每次数据库访问时切换分布式事务类型。 支持的事务类型包括 本地事务、XA事务 和 柔性事务。可在创建数据库连接之前设置,缺省为 Apache ShardingSphere 启动时的默认事务类型。