【51CTO.com原创稿件】“下载个手机银行APP,不仅能免费转账汇款、购买理财产品等,还能随时随地查询账户明细,非常方便。”如今,越来越多的人渐渐习惯了使用手机银行APP。这也意味着随着移动互联网的快速发展,随时随地通过手机享受金融服务已经成为当前人们金融生活的主要方式。
然而,手机银行的快速发展给后台造成了很大的压力。由于后台产品是一个大的微服务架构,假如出现异常,排错会比较困难。如何提前识别性能问题,提高产品质量,提升产品的交付信心,是后台工作的重点和难点,如何选择合适的运维监控平台就成了关键。
快速发展带来的压力
中国银行手机银行,定位于中国银行的一个综合金融移动门户。目前,手机银行的覆盖率大约达到了94%。一些重点产品有转账汇款、理财产品以及账户管理等功能。交易贡献率达到了76%。中国银行手机银行也在融合大数据和AI,一直以提升用户体验和丰富功能为目标。据中国银行软件中心软件工程师罗皓介绍,中国银行手机银行秉承微服务的理念将产品全面重构,同时将应用从小机下移至X86平台。经过两年的不断探索和钻研,目前已对外提供:APP多版本发布管理、定制信息云备份、配置中心、移动端搜索引擎等微服务。
中国银行软件中心软件工程师罗皓
移动终端服务支持定位于为手机银行等APP应用提供服务支持。手机银行月活数持续上升,日均APP启动数超过700万次。面对不断上涨的并发请求,产品组经过四轮调优,基于分布式的微服务架构,承载能力较之前提升了3倍。
当前随着互联网架构的扩张,越来越多的系统开始走向分布化,微服务,消息收发,分步式搜索引擎、分布式数据库,分布式缓存、分布式对象存储以及跨域调用,这些组件共同构成了分布式系统,是将巨大的单体应用分解成多个可供管理的分支或服务,解决了之前的单体应用的复杂性问题,同时改善了故障隔离。这意味着当有一个微服务宕机时,不会影响到整个应用或者正常正在运行的服务。但同时,当外部有请求进入系统时,系统可能有数个乃至数十个微服务被调用,可谓牵一发而动全身,为开发和测试带来了困难。这时就需要一个工具来跟踪调用分布式系统,中国银行手机银行选择了Dynatrace。
Dynatrace助力分布式节点下的性能排查
Dynatrace是APM市场的***者,连续数年蝉联APM市场***名。
上图表明,在应用中配置Dynatrace十分简单,主要分为五步:安装Agent,探针,把Dynatrace提供的第三方库调入应用当中,配置服务器文件和应用的启动文件,***支撑整个应用。Dynatrace无缝嵌入应用当中,但是Dynatrace对代码没有任何侵入,十分安全快捷、简单。
罗皓介绍说,中国银行手机银行使用Dynatrace的应用之一是分布式节点下的性能排查。
上图是拓扑图,每个节点上的事物,包括事物的执行时间,以及事物的错误率都被很直观的展现了出来,而且点击某个节点,还可以深入单应用拓扑图,通过深入分析可以快速定位错误。并且,每一个请求所耗费的时间,包括CPU等待,IO等待,以及深入代码层级,每个方法的执行时间都事无巨细的展现了出来,这源于Dynatrace具备端到端可视化能力,可深入分析到每一个数字化库,提供了有价值且可操作的客户深度分析。
上图是使用效果。以往,如果在操作过程中出现BUG,就要不断的尝试,把服务器日志扒出来一台台排查。而使用Dynatrace之后,只要错误出现过一次就会被记录下来,包括报错的具体方法以及执行时间,都可以展现出来,大大减少了开发和测试的工作量。
未来还将继续深入合作
罗皓透露,未来,中国银行手机银行将在以下五个方面继续使用Dynatrace,包括微服务跟踪,应用和架构依赖分析,重点交易的监控,性能监控以及异常排查。
1、 微服务跟踪。主要监控跟踪不同应用间复杂的调用关系,应用和架构依赖关系。
2、 应用和架构依赖分析。指在开发和测试过程中,基础架构和应用的依赖分析,基础环境对应用的影响分析。
3、 重点交易的监控。包括登录,搜索,云备份等重点交易的交易量,TPS,错误率。
4、 性能监控。通过性能分析模块实时定位程序各部分响应时间,协助开发人员定位性能瓶颈,同时检查开发部署版本信息与性能影响。
5、 异常排查。通过异常模块可以看到应用抛出的所有异常类,信息,总数,以及抛出方法,通过PurePath,可以快速定位错误。
记者视点
在移动金融迅速发展的今天,手机银行的发展对银行转型发展发挥着重要的作用,Dynatrace人工智能全栈式监控运维平台为企业客户提供了基于人工智能技术的卓越应用体验——速度更快、质量更高,并可管理运营复杂性,涵盖纷繁复杂的云环境,从而确保了企业交付出色的客户体验,必将帮助银行提高移动金融的普及率和使用率。
【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】