事务分组

最近更新时间: 2024-06-12 15:06:00

操作场景

该任务指导您通过分布式事务 DTF 控制台,进行分布式事务的创建和管理。

操作步骤

新建事务分组

  1. 登录 分布式事务 DTF 控制台,在左侧导航栏单击【事务分组】。
  2. 在事务分组页面,单击【新建】,在新建事务分组的弹框中,输入分组名称及备注(选填)。
    • 分组名称:支持中、英文(大小写敏感)、数字、下划线、连接号(-),长度不超过40个字符
    • 备注(选填):最长200个字符
  3. 单击【提交】,完成创建。

获取事务分组基本信息

前提:已新建过事务分组或有存量事务分组。

  1. 事务分组 页面,单击事务分组 ID。
  2. 单击【基本信息】,可获取事务分组 ID,以及事务分组对应的集群 TC 端口号(Broker List)。在配置pom文件时需要用到。

事务的三种检索方式

前提:事务分组中已有运行中的事务。

查看近期事务

默认为您查询该事务分组下近24小时运行的全部主事务。
您可通过修改时间范围来检索自定义时间段内的全部事务。
Tips:通过概览页的监控界面检索自定义时间段事务,更加直观便捷。

按照异常事务搜索

通过按照异常事务搜索,您可以快速找到异常事务,并处理异常事务。
处理异常事务:
异常事务可以分为以下两类:

  1. 业务逻辑错误。
  2. 某个服务、数据库、Redis、ES、MQ等在Try阶段和Confirm/Cancel阶段的故障状态不一致(如在Try阶段正常,在Confirm/Cancel阶段宕机、故障)。
  3. 网络故障。
    在异常事务发生前,DTF框架已进行了三次重试,逻辑为:执行Confirm/Cancel逻辑后,hold 15分钟,若失败,则发起3次重试,每次都hold 15分钟。因此异常事务重试后的状态可能需要一小时刷新。
    DTF不会无限重试异常事务,在以上重试尝试失败后,需要您手动处理异常事务。处理时,您需要逐一排查业务逻辑是否有问题,事务涉及到的服务、数据库等是否出现故障,网络故障是否恢复。排查完成之后再重试异常事务。
    您可直接点击右侧的重试,来重试单条异常事务。
    也可选择多条异常事务,点击上方【重试】来发起小批量重试。
    【重试全部】可对全部异常事务发起重试,但需要花费较多时间,同时会影响重试这段时间内的性能。

按照主事务ID搜索

当您需要精准搜索某一条主事务信息时,可以通过此功能进行搜索。主事务ID 可以通过stdout 来获取。一般情况下,您无需使用此搜索功能。

监控

事务分组 页面中,单击监控列的图表,即可查看该组事务的监控信息。
您可自定义需要查询的监控时间窗以及数据显示的时间粒度。

监控指标的解释如下:

  • 主事务:在当前时间粒度中主事务的次数。
  • 异常事务:在当前时间粒度中异常事务的次数。
  • TPS(分钟级均值):在当前时间粒度下,平均到每秒的事务总数。举例:在1分钟时间内总事务数共150条,这里数据会显示为150 ÷ 60 = 2.5次。
  • 成功提交主事务数:在当前时间粒度中成功完成提交的主事务数。
  • 回滚主事务数:在当前时间粒度中成功完成回滚的主事务数。
  • 事务分组健康度:范围为0% - 100%。事务分组健康度反映了事务分组中异常事务的比例,当健康度不为100%时,建议尽快手动处理异常事务。