最新要闻
- 热文:个人养老金产品代销排行:招行、交行、平安暂居前三,优势还是烦恼?
- 全球观热点:开机先看电影?壁纸神器Wallpaper Engine惊现《流浪地球2》 网友吐槽缺德
- 世界即时看!路特斯被曝将试驾车当新车交付 车主:有全部证据 索赔385万
- 紫气东来!魅族20 PRO推出晨曦紫新配色:4399元起售 享3年质保
- 苹果神一样存在!iPhone彻底统治日本市场:份额超50% 安卓被摩擦-全球通讯
- 天天报道:小米Civi 3正面首曝:药丸曲面屏比iPhone 14 Pro更精致
- 南阳市新野县团结小学经典诵读展示活动成功举办
- 全球观焦点:消夏之夜购物节吸引百余商家汇聚 到场市民超过10万人次
- 每日讯息!OPPO Reno10影像称绝:全系标配长焦镜头
- 南宁路边停车一天收费上百 有车主欠费6.4万_当前快播
- 同调拼色设计辨识度拉满!小米Civi 3真机外观首秀来了 世界热闻
- 大内存大存储真香!新版真我GT Neo5官宣:16GB+1TB明日开售 报资讯
- 热点聚焦:国产视频剪辑软件取代PR?联想YOGA官宣与剪映独家合作
- 世界实时:【苗乡侗寨人物志】“想喝正宗酸汤,去凯里就对了”
- 时讯:出口货值增长近40倍!我国这个地方制造的汽车加速出口中亚→
- 焦点!拓邦发布钠离子电池:-40℃放电容量近80% 秒杀锂电
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
Seata 的可观测实践
作者:察溯
Seata 简介
Seata 的前身是阿里巴巴集团内大规模使用保证分布式事务一致性的中间件,Seata 是其开源产品,由社区维护。在介绍 Seata 前,先与大家讨论下我们业务发展过程中经常遇到的一些问题场景。
(资料图片)
业务场景
我们业务在发展的过程中,基本上都是从一个简单的应用,逐渐过渡到规模庞大、业务复杂的应用。这些复杂的场景难免遇到分布式事务管理问题,Seata 的出现正是解决这些分布式场景下的事务管理问题。介绍下其中几个经典的场景:
场景一:分库分表场景下的分布式事务
起初我们的业务规模小、轻量化,单一数据库就能保障我们的数据链路。但随着业务规模不断扩大、业务不断复杂化,通常单一数据库在容量、性能上会遭遇瓶颈。通常的解决方案是向分库、分表的架构演进。此时,即引入了分库分表场景下的分布式事务场景。
场景二:跨服务场景下的分布式事务
降低单体应用复杂度的方案:应用微服务化拆分。拆分后,我们的产品由多个功能各异的微服务组件构成,每个微服务都使用独立的数据库资源。在涉及到跨服务调用的数据一致性场景时,就引入了跨服务场景下的分布式事务。
Seata 架构
- Transaction Coordinator(TC)事务协调器,维护全局事务的运行状态,负责协调并驱动全局事务的提交或回滚。
- Transaction Manager(TM)控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交或全局回滚的决议,TM 定义全局事务的边界。
- Resource Manager(RM)控制分支事务,负责分支注册、状态汇报,并接收事务协调器的指令,驱动分支(本地)事务的提交和回滚。RM 负责定义分支事务的边界和行为。
Seata 的可观测实践
为什么需要可观测?
- 分布式事务消息链路较复杂Seata 在解决了用户易用性和分布式事务一致性这些问题的同时,需要多次 TC 与 TM、RM 之间的交互,尤其当微服务的链路变复杂时,Seata 的交互链路也会呈正相关性增加。这种情况下,其实我们就需要引入可观测的能力来观察、分析事物链路。
- 异常链路、故障排查难定位,性能优化无从下手在排查 Seata 的异常事务链路时,传统的方法需要看日志,这样检索起来比较麻烦。在引入可观测能力后,帮助我们直观的分析链路,快速定位问题;为优化耗时的事务链路提供依据。
- 可视化、数据可量化可视化能力可让用户对事务执行情况有直观的感受;借助可量化的数据,可帮助用户评估资源消耗、规划预算。
可观测能力概览
Metrics 维度
设计思路
- Seata 作为一个被集成的数据一致性框架,Metrics 模块将尽可能少的使用第三方依赖以降低发生冲突的风险
- Metrics 模块将竭力争取更高的度量性能和更低的资源开销,尽可能降低开启后带来的副作用
- 配置时,Metrics 是否激活、数据如何发布,取决于对应的配置;开启配置则自动启用,并默认将度量数据通过 prometheusexporter 的形式发布
- 不使用 Spring,使用 SPI(Service Provider Interface) 加载扩展
模块设计
- seata-metrics-core:Metrics 核心模块,根据配置组织(加载)1 个 Registry 和 N 个 Exporter
- seata-metrics-api:定义了 Meter 指标接口,Registry 指标注册中心接口
- seata-metrics-exporter-prometheus:内置的 prometheus-exporter 实现
- seata-metrics-registry-compact:内置的 Registry 实现,并轻量级实现了 Gauge、Counter、Summay、Timer 指标
metrics 模块工作流
上图是 metrics 模块的工作流,其工作流程如下:
- 利用 SPI 机制,根据配置加载 Exporter 和 Registry 的实现类
- 基于消息订阅与通知机制,监听所有全局事务的状态变更事件,并 publish 到EventBus
- 事件订阅者消费事件,并将生成的 metrics 写入 Registry
- 监控系统(如 prometheus)从 Exporter 中拉取数据
TC 核心指标
TM 核心指标
RM 核心指标
大盘展示
Tracing维度
Seata 为什么需要 tracing?
- 对业务侧而言,引入 Seata 后,对业务性能会带来多大损耗?主要时间消耗在什么地方?如何针对性的优化业务逻辑?这些都是未知的。
- Seata 的所有消息记录都通过日志持久化落盘,但对不了解 Seata 的用户而言,日志非常不友好。能否通过接入 Tracing,提升事务链路排查效率?
- 对于新手用户,可通过 Tracing 记录,快速了解 Seata 的工作原理,降低 Seata 使用门槛。
Seata 的 tracing 解决方案
- Seata 在自定义的 RPC 消息协议中定义了 Header 信息
- SkyWalking 拦截指定的 RPC 消息,并注入 tracing 相关的 span 信息
- 以 RPC 消息的发出&接收为临界点,定义了 span 的生命周期范围
基于上述的方式,Seata 实现了事务全链路的 tracing,具体接入可参考为[Seata 应用 | Seata-server]接入 Skywalking[1]。
tracing 效果
- 基于的 demo 场景:
- 用户请求交易服务
- 交易服务锁定库存
- 交易服务创建账单
- 账单服务进行扣款
- GlobalCommit 成功的事务链路(事例)
Logging 维度
设计思路
Logging 这一块其实承担的是可观测这几个维度当中的兜底角色。放在最底层的,其实就是我们日志格式的设计,只有好日志格式,我们才能对它进行更好的采集、模块化的存储和展示。在其之上,是日志的采集、存储、监控、告警、数据可视化,这些模块更多的是有现成的工具,比如阿里的 SLS 日志服务、还有 ELK 的一套技术栈,我们更多是将开销成本、接入复杂度、生态繁荣度等作为考量。
日志格式设计
这里拿 Seata-Server 的一个日志格式作为案例:
- 线程池规范命名:当线程池、线程比较多时,规范的线程命名能将无序执行的线程执行次序清晰展示
- 方法全类名可追溯:快速定位到具体的代码块
- 重点运行时信息透出:重点突出关键日志,不关键的日志不打印,减少日志冗余
- 消息格式可扩展:通过扩展消息类的输出格式,减少日志的代码修改量
总结&展望
Metrics
总结:基本实现分布式事务的可量化、可观测。展望:更细粒度的指标、更广阔的生态兼容。
Tracing
总结:分布式事务全链路的可追溯。展望:根据 xid 追溯事务链路,异常链路根因快速定位。
Logging
总结:结构化的日志格式。展望:日志可观测体系演进。Seata-go 是 Seata 的多语言规划的重要一环,目前处在高速发展时期,欢迎大家一起加入建设。如果你对 Seata 有任何问题,欢迎通过钉钉搜索群号加入我们。(钉钉群号:33069364)
相关链接:
[1]为[Seata 应用 | Seata-server]接入 Skywalking
https://seata.io/zh-cn/docs/user/apm/skywalking.html
关键词:
Seata 的可观测实践
直播源码技术录制功能知识
java 外壳加密,完美解决|全球看点
热文:个人养老金产品代销排行:招行、交行、平安暂居前三,优势还是烦恼?
全球观热点:开机先看电影?壁纸神器Wallpaper Engine惊现《流浪地球2》 网友吐槽缺德
世界即时看!路特斯被曝将试驾车当新车交付 车主:有全部证据 索赔385万
紫气东来!魅族20 PRO推出晨曦紫新配色:4399元起售 享3年质保
苹果神一样存在!iPhone彻底统治日本市场:份额超50% 安卓被摩擦-全球通讯
天天报道:小米Civi 3正面首曝:药丸曲面屏比iPhone 14 Pro更精致
南阳市新野县团结小学经典诵读展示活动成功举办
rt下降40%?程序并行优化六步法|天天最资讯
为什么MySQL单表不能超过2000万行?_环球动态
05-译码器
全球观焦点:消夏之夜购物节吸引百余商家汇聚 到场市民超过10万人次
每日讯息!OPPO Reno10影像称绝:全系标配长焦镜头
南宁路边停车一天收费上百 有车主欠费6.4万_当前快播
同调拼色设计辨识度拉满!小米Civi 3真机外观首秀来了 世界热闻
大内存大存储真香!新版真我GT Neo5官宣:16GB+1TB明日开售 报资讯
热点聚焦:国产视频剪辑软件取代PR?联想YOGA官宣与剪映独家合作
世界实时:【苗乡侗寨人物志】“想喝正宗酸汤,去凯里就对了”
Android Studio源码导入与调试_环球新资讯
天天快讯:From Java To Kotlin:空安全、扩展、函数、Lambda很详细,这次终于懂了
GPS北斗校时服务器(时间同步装置)助力桥梁检测系统建设
微动态丨HTTP1.0、HTTP1.1、HTTP2.0 协议的区别
时讯:出口货值增长近40倍!我国这个地方制造的汽车加速出口中亚→
焦点!拓邦发布钠离子电池:-40℃放电容量近80% 秒杀锂电
玩家化身手工耿血洗《塞尔达》:不仅造出了坦克飞机还要修仙
独悬变扭力梁、气囊也少了 新款丰田卡罗拉上市:11.68万起
国内营收占10%以上 美光成美国存储芯片独苗:内存全球第三_每日快看
新车下饺子!比亚迪宋Pro DM-i冠军版内饰官图发布:新配色真高级
优选营养素密度高的食物,合理膳食提升免疫力
c语言程序设计知识点总结03-精彩看点
没有5G卖4G的华为手机比苹果还牛:消息称逆势上调全年出货量目标 全行业第一家|天天精选
1499元!小度青禾学习手机开启预售:一机顶6台 立省1万元
热门看点:400年前的画里有男孩穿耐克鞋 网友称穿越:还有百年前画作出现iPhone
全红婵的水花让物理学不存在了 网友点赞:物理学对她不适用|全球观热点
一个月没找到 美国30吨爆炸性化学品铁路运输时丢失:科普硝酸铵理化性质-世界热点
快报:中国抗体-B(03681.HK):SM17新药研究申请获国家药监局药品审评中心受理
天天精选!交易商协会发布4月债务融资工具业务量统计和主承分类统计
印为何收回2000卢比纸币?专家:缓解银行流动性危机和加息压力
BLG夺《英雄联盟》MSI亚军 B站:BLG粉丝赠送一年大会员 全球微动态
比亚迪汉DM-i冠军版/DM-p战神版爆火!3天订单破1.3万辆:女车主高达37.2%
盖茨再爆与20多岁俄女子发生婚外情 遭美国淫魔富豪威胁 全球速看料
学系统集成项目管理工程师(中项)系列24a_信息系统集成专业技术知识(上)-当前播报
世界快播:雅顿橘灿精华使用方法 雅顿橘灿精华用在哪个步骤
JDG战胜BLG夺《英雄联盟》MSI冠军!官方发福利:皮肤免费送 全球头条
《王国之泪》开发之初没有剧情:优先考虑游戏体验-环球热消息
全国首个DNA存储领域预训练大模型 ChatDNA发布 今日快看
最新消息:[工具/资源] Web应用开发的基础工具与资源
全球观察:Pytest - pytest 命令(2) - 命令参数及含义
计算机组成原理:控制器实验|全球今亮点
焦点播报:记录一次系统恢复的经历
linux 性能自我学习 ———— 理解平均负载 [一] 环球看热讯
焦点速讯:我们看腻了的电视剧 却在东南亚成了顶流
清华女生获选美冠军 回应质疑:打破对理工科女生的偏见 全球热文
音量调节器怎么在桌面显示_音量调节器不见
情定三生40集大结局_你都学会了吗_全球讯息
Netflix 网站架构学习
wps邮件合并功能无法打开数据源_wps邮件合并
三大运营商最新财报出炉:一天净赚4.2亿|每日消息
国内AI大模型 VS chatgpt (20)-- H265/H264有何不同,h265有什么优势?
Revit二次开发实战04(元素搜集过滤器FilteredElementCollector)
雅顿和珂润哪个好 珂润和雅漾哪个好
世界时讯:官方:美光在华销售产品 未通过网络安全审查!关键领域停止采购
DDR5内存之疯狂:频率突破11.2GHz!延迟惨不忍睹-全球观点
每日快看:完全自主知识产权 国产全新3D dToF芯片发布
伊拉克“抱脸虫”追着美国大兵跑!比你想象的还可怕|每日视讯
《GTA6》男主现身:和游戏画面一模一样|速读
期权即将到期 黄金重回区间还是下破?_环球快播报
世界报道:C++ Primer 5th 阅读笔记:字符串,vector 和数组
焦点热文:杂项·入门
AMD RX 7600公版卡曝光:双风扇也迷你可爱!国内会卖吗?|今日热讯
全国第一次!两条高铁的两座特大桥同时转体|焦点关注
大众CC开着开着天窗没了 车主:吓得腿发抖-世界聚焦
万科150亿元定增申请获深交所受理 当前快讯
独特多媒体旋钮设计瞩目:Keychron即将推出Q3 Pro SE机械键盘 观天下
环球时讯:锐龙7 7800X3D开盖“果奔”:60秒后 惨烈一幕出现
妇女能顶半边天下一句_我歌月徘徊下一句 全球信息
即时看!首批名额仅600名:魅族17系列迎来Flyme10内测招募
你的走路姿势 可能一直都错了!难看还伤腿
观速讯丨珍惜白菜价的电视吧 液晶电视面板价格继续大涨
武汉市三角路中学(关于武汉市三角路中学介绍)_世界今热点
499元新机竟敢对标苹果 看完真的有点香!
每日动态!凸六式扫把火了 商家剪坏扫把低价引流 男子将计就计下单
SpringBoot利用自定义注解实现多数据源
2尺2是多少毫米(2尺2多少厘米简介介绍)_今日热议
杭州现鸭屎香冰淇淋:味道揭秘!原来鸭屎香是一种乌龙茶
头条焦点:英国CMA或让步!微软收购动视暴雪新变动
天天关注:《英雄联盟》2023 MSI决赛JDG对战BLG!首发名单出炉:萍乡第一中单之争
青沼英二坦言自己老了:《王国之泪》将我逼到极限
银川市为500名女童免费接种HPV疫苗
IMU 积分进行航迹推算 天天快报
Win7经典“顽疾”:微软确认Win11硬盘可能被错误识别|全球今热点
“挖呀挖”黄老师开始转型:参与文旅宣传!曾否认辞职带货
焦点热文:小李子新片《花月杀手》M站91分 多家媒体给出满分
格致男排,夺冠! 每日速递
CesiumJS 源码杂谈 - 时间与时钟系统_前沿热点
《利益区间》冲击金棕榈大奖
4999元起!小牛MQiL电动两轮车开售:顶配能骑170km_世界动态
对话盛希泰:“专精特新”企业给二三四线城市带来发展机会_世界视点