https://github.com/dtm-labs/dtmcli-node-sample
node sample of dtmcli
https://github.com/dtm-labs/dtmcli-node-sample
Last synced: 7 months ago
JSON representation
node sample of dtmcli
- Host: GitHub
- URL: https://github.com/dtm-labs/dtmcli-node-sample
- Owner: dtm-labs
- License: mit
- Created: 2021-07-13T07:08:37.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-10-09T08:39:47.000Z (over 3 years ago)
- Last Synced: 2025-04-28T19:14:15.941Z (9 months ago)
- Language: JavaScript
- Homepage:
- Size: 38.1 KB
- Stars: 7
- Watchers: 10
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dtmcli-node-sample
dtmcli的node使用示例
## 快速开始
### 安装运行dtm
参考[dtm安装运行](https://dtm.pub/guide/install.html)
## 运行示例
安装依赖
```bash
npm install
```
### Tcc
```bash
node index.js
```
#### 输出
可以从dtmcli-node-sample的日志里看到执行的顺序如下:
- TransOutTry
- TransInTry
- TransInConfirm
- TransOutConfirm
整个tcc事务执行成功
### 简单 saga
```bash
node saga.js
```
#### 输出
可以看到如下顺序输出:
- TransOut
- TransIn
整个 saga 事务执行成功
### 并发 saga
```bash
node saga.js concurrent
```
#### 输出
可以看到如下顺序输出:
- TransOut
- TransOut
- TransIn
- TransIn
整个 saga 事务并发执行, 并且符合指定顺序
### 二阶段消息
#### 前置准备
准备`dtm_busi`库,新增`user_account`、`barrier`两张表。[具体sql参考](https://github.com/dtm-labs/dtm/tree/main/sqls)。
***注意barrier表同样需要建在dtm_busi库里***。
#### 普通消息
```bash
node msg.js
```
可看到日志中的sql执行语句并有如下顺序输出:
- TransOut 30
- TransIn 30
#### 二阶段消息
```bash
node msg.js local
```
可看到日志中的sql执行语句,并输出TransIn 30,
连接数据库可看到两个user的转账结果。