事务分组
最近更新时间: 2024-10-17 17:10:00
操作场景
该任务指导您通过分布式事务 DTF 控制台,进行分布式事务的创建和管理。
操作步骤
新建事务分组
- 登录 分布式事务 DTF 控制台,在左侧导航栏单击【事务分组】。
- 在事务分组页面,单击【新建】,在新建事务分组的弹框中,输入分组名称及备注(选填)。
- 分组名称:支持中、英文(大小写敏感)、数字、下划线、连接号(-),长度不超过40个字符
- 备注(选填):最长200个字符
- 单击【提交】,完成创建。
获取事务分组基本信息
前提:已新建过事务分组或有存量事务分组。
- 在 事务分组 页面,单击事务分组 ID。
- 单击【基本信息】,可获取事务分组 ID,以及事务分组对应的集群 TC 端口号(Broker List)。在配置pom文件时需要用到。
事务的三种检索方式
前提:事务分组中已有运行中的事务。
查看近期事务
默认为您查询该事务分组下近24小时运行的全部主事务。
您可通过修改时间范围来检索自定义时间段内的全部事务。
Tips:通过概览页的监控界面检索自定义时间段事务,更加直观便捷。
按照异常事务搜索
通过按照异常事务搜索,您可以快速找到异常事务,并处理异常事务。
处理异常事务:
异常事务可以分为以下两类:
- 业务逻辑错误。
- 某个服务、数据库、Redis、ES、MQ等在Try阶段和Confirm/Cancel阶段的故障状态不一致(如在Try阶段正常,在Confirm/Cancel阶段宕机、故障)。
- 网络故障。
在异常事务发生前,DTF框架已进行了三次重试,逻辑为:执行Confirm/Cancel逻辑后,hold 15分钟,若失败,则发起3次重试,每次都hold 15分钟。因此异常事务重试后的状态可能需要一小时刷新。
DTF不会无限重试异常事务,在以上重试尝试失败后,需要您手动处理异常事务。处理时,您需要逐一排查业务逻辑是否有问题,事务涉及到的服务、数据库等是否出现故障,网络故障是否恢复。排查完成之后再重试异常事务。
您可直接点击右侧的重试,来重试单条异常事务。
也可选择多条异常事务,点击上方【重试】来发起小批量重试。
【重试全部】可对全部异常事务发起重试,但需要花费较多时间,同时会影响重试这段时间内的性能。
按照主事务ID搜索
当您需要精准搜索某一条主事务信息时,可以通过此功能进行搜索。主事务ID 可以通过stdout 来获取。一般情况下,您无需使用此搜索功能。
监控
在 事务分组 页面中,单击监控列的图表,即可查看该组事务的监控信息。
您可自定义需要查询的监控时间窗以及数据显示的时间粒度。
监控指标的解释如下:
- 主事务:在当前时间粒度中主事务的次数。
- 异常事务:在当前时间粒度中异常事务的次数。
- TPS(分钟级均值):在当前时间粒度下,平均到每秒的事务总数。举例:在1分钟时间内总事务数共150条,这里数据会显示为150 ÷ 60 = 2.5次。
- 成功提交主事务数:在当前时间粒度中成功完成提交的主事务数。
- 回滚主事务数:在当前时间粒度中成功完成回滚的主事务数。
- 事务分组健康度:范围为0% - 100%。事务分组健康度反映了事务分组中异常事务的比例,当健康度不为100%时,建议尽快手动处理异常事务。