开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
Global Transaction Layer首页、文档和下载 - 数据库连接池 - 开源中国社区
全部项目分类
我要评价
GPL
Java
跨平台
刘蚊子
分享
收藏
3 人收藏
收录时间:2017-04-20
Global Transaction Layer 详细介绍

GTL(Global Transaction Layer)

一、需求目标:

  1. 提供数据库操作代理

  2. 提供可共享的持续性的事务操作

  3. 多数据源支持

  4. 数据源连接池支持

  5. 数据库读写分离支持

  6. 支持异构系统/分布式系统调用

  7. 长时间未提交事务, 自动超时回滚

  8. 支持事务嵌套使用

二、协议说明:

交互协议:

HTTP(s)    备注: 后期将支持Socket协议

数据交换格式:

JSON     二期使用MsgPack后以二进制流传输

请求协议:

HOST: http(s)://gtl.example.com METHOD: POST Entry: /api 请求参数: call={#接口名称, 如: beginTransaction} args={#接口参数集合, 要求必须为JSON. 如: {dsId: 'peizi'}} ua={#请求方UA,用来识别用户身份. 如: ios_client_ua} sign={#请求签名数据,签名规则见[签名生成算法].}

请求示例

http(s)://gtl.example.com/api?call=beginTransaction&args={dsId: 'peizi'}&ua=ios_client_ua&sign=asdflsadjflkjsafdljlaskjfdl

签名生成算法

const API_UA = "ios_client_ua";const API_SECKEY = API_UA."分配给子系统的签名密钥".API_UA;
$sign = md5( API_SECKEY . call . API_SECKEY . args . API_SECKEY );

响应标准: data 接口返回数据. 默认为 null. 根据业务不同可以为数组 或 其他任意对象 status 接口执行状态; 默认为1: 成功; 失败则为负值; message 接口返回的消息, 默认为: success; 如果接口不成功, 则消息为对应状态的错误描述


大家对 Global Transaction Layer 的评论 (全部 0 条评论)
{{repayCom.userName}}
顶部