dtmcli
A Ruby SDK for distributed transaction manager dtm
Usage
gem install dtmcli
Example
dtm_url = '127.0.0.1:8080/api/dtm'
biz_url = '127.0.0.1:3000/api/biz'
# TCC version
res = Dtmcli::Tcc.tcc_global_transaction(dtm_url) do |tcc|
body = {amount: 30}
print "calling trans out\n"
tcc.call_branch(body, biz_url + '/TransOutTry', biz_url + '/TransOutConfirm', biz_url + '/TransOutCancel')
print "calling trans in\n"
tcc.call_branch(body, biz_url + '/TransInTry', biz_url + '/TransInConfirm', biz_url + '/TransInCancel')
end