如何建设技术中台?

EAWorld
关注

2. 保证数据一致性的模式

(一)可靠事件模式(二)业务补偿模式(三)TCC模式(Try-Confirm-Cancel)

上述几种模式,经常有人提到下面的问题:

1)都要求服务提供者在正常的交易之外,提供额外的功能,貌似带来了代码的复杂度,加大了工作量。实际上都是业务需求中必备的,例如:TCC 模式在交易系统中都有预扣款这样的接口,并不会增加实现的工作量。而对于服务的调用者来说,相关服务的调用由微服务框架实现,例如自动的事件投放、自动补偿调用、TCC中 CC 服务的调用,也不需要额外的工作量;2)如何从当前上下文向补偿接口、confirm接口、cancel 接口传递参数?实际上只要将正向交易的数据传递过去即可,不需要额外的数据;3)如果补偿还是失败,该怎么办?还是需要对账的。 分布式感觉能力的相关技术

建立感觉能力可以概括为以下四种方式:

1)心跳监测:提供模拟交易,由系统主动提供运行状态信息。2)日志记录:系统将运行情况记录下来,用于感觉后端服务的运行情况。3)字节码注入:注入到服务端代码中,用于感觉后端服务的运行情况。4)客户端埋点:注入到客户端代码中,用于感觉前端的运行情况。

聚合式知觉能力的相关技术

“感觉”探查到的信息汇总形成完整的“知觉”,例如:

1)健康检查:知晓微服务健康状态,了解服务的可用性,避免调用到失效服务上。2)性能分析:知晓微服务运行的性能,了解整个系统的瓶颈,在实时分析的基础上进行预警,在问题萌芽的阶段发觉并告警,降低问题影响的范围和时间。3)业务监控:知晓业务交易情况,监测业务访问量、慢交易数量、业务时延及发生错误的次数等各项业务指标。4)故障定位:知晓微服务的拓扑结构、调用关系和调用顺序,实时搜集信息并进行聚合分析,了解系统和应用中发生的事件,尽量避免故障,并且在发生故障后快速定位故障,减少处理时间。

重复的“轮子”。

建立微服务架构下系统的知觉能力,需要多个层面配合完成,是一个系统性的工程,而不是孤立的考虑。我们把系统的“知觉”能力纵向分为四个层次,客户端(Web、H5、APP、小程序等)、服务端(微服务进程)、技术组件(虚机、容器、中间件、数据库等)、基础设施(网络、服务器、存储等)。“知觉”体现的最终行动,分为链路拓扑、监控、预警、故障定位、趋势分析等几个主题;配置中心(CMDB)实现所有涉及到的应用软件、系统软件、服务器和网络设备的配置管理、监控参数设置、业务规则配置,监控中心负责监控展示与告警;分析中心根据“感觉”采集的数据进行深度挖掘,积累知识。 关于作者:黄荣,数字化金融研究院研究员,擅长系统分析和架构设计、金融三级密钥安全体系及信息安全保障、虚拟化和云计算技术、JavaEE技术;参与研发的神州商桥电子商务平台获得“全国电子商务示范单位”称号;带领团队研发的国电通云终端系统在国网多个省公司推广应用。

声明: 本文由入驻OFweek维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。
侵权投诉

下载OFweek,一手掌握高科技全行业资讯

还不是OFweek会员,马上注册
打开app,查看更多精彩资讯 >
  • 长按识别二维码
  • 进入OFweek阅读全文
长按图片进行保存