在移动互联网快速发展的影响下,传统的银行业务开始纷纷+上互联网,打造更加智能、移动的电子银行系统,并以发展互联网金融为未来的业务重点。同时,如今的用户体验已变得越来越重要,拥有广泛客户群体的传统商业银行都在不遗余力地优化自身业务系统,确保为用户提供更加出色的使用体验,而拥有诸多海外跨境业务,着力在互联网+时代打造更加优质的金融产品的中国银行自然也不例外。
正是在这样的数字化转型的过程中,Dynatrace携手中国银行软件中心实现了实时响应的数字化性能管理,从而全面优化企业IT 系统,为舒适的客户体验保驾护航。
据中国银行软件中心测试工程师蒋梦霞介绍,中国银行软件中心的定位主要是负责中国银行应用产品的开发、测试、维护管理和实施工作。目前,软件中心已经发展为5地1中心的架构,涵盖北京、深圳、上海、西安和合肥五大分中心。其中,启动的西安分中心将是中国银行在互联网金融方面腾飞的起点,也是中国银行在互联网金融产品方面的“创新工厂”。
中国银行软件中心测试工程师蒋梦霞
受困于三项系统开发难题
当前,随着各个分中心规模的不断扩大,中国银行内部系统的开发任务也变得愈发艰巨,其中各项金融产品不但越来越复杂,数量也呈快速上升状态。同时,产品在开发方式上的多样性,以及来自业界的竞争压力,都促使中国银行急需找到一个强有力的指导方法与解决方案来共同应对来自内部系统性能表现的挑战,能够做到在开发阶段就提前识别性能问题,防止生产过程中的性能缺陷。
此前,尽管中国银行针对这一方面的挑战已经开展了一系列卓有成效的实践,但仍然遇到了一些IT系统开发、管理中共性的问题。这其中便包括:一些性能问题已经表现出来,但难以找到问题的根源;同时,有一些产品的运行看起来流畅完美,但实际存在着潜在的性能隐患;此外,在开发、测试、维护的各个阶段都存在着性能错误排查困难的情况。
基于上述几项问题,中国银行软件中心于今年在开发阶段积极引入Dynatrace的应用性能管理工具,通过对操作系统、数据库、中间件、应用系统全面完善的整体监控,对后续的故障分析和性能调优提供支持与可靠的参考依据。
四招实现高效性能管理
目前,中国银行软件中心已在11个产品中推广了Dynatrace的应用性能管理工具,并部署了54个探针,用以优化应用系统的性能问题。
其中一项具体的实践便是,中行某款产品在同样的一套应用版本内登录请求的响应时间却相差很大,当负载登录器将登录请求发送到A节点时的响应时间大概为220毫秒,而发送到D节点的响应时间却长达2秒。对于互联网时代至高无上的用户体验来说,加载登录时间的稍微延迟,便会导致客户的流失,而对于中国银行这样的百年老店来说,在每一项产品上都为客户提供优质的用户体验至关重要。
通过采用Dynatrace解决方案对该问题进行具体定位,中国银行软件中心监测到其中的一项函数耗时较大,再通过对比两个节点上函数的具体代码,推测出导致该问题的原因有可能为开发人员在调试过程中将函数的级别降低了,因此会在加载过程中过于详细地输入日志信息,从而导致登录响应时间长。
其次,因为中国银行软件中心对软件开发有一套完整的把控要求,在开发过程中希望开发人员不仅要了解自己的功能模块,还要对产品的应用架构、应用流程,甚至其他人的开发代码都要有一个全面的了解。因此,在使用Dynatrace解决方案之后,通过实时绘制的业务流程和系统架构,包括调用关系的功能,中国银行软件中心得以从大局上把握整个业务的流程是否和当初设计的一致,也可以监测业务的调用次数是否在正常的范围之内,明确地看到哪些节点上出现了问题,以及业务流程上出现的一些错误。
再次,在程序运行的阶段,通过Dynatrace解决方案,中行软件中心可以检查整个程序的运行逻辑跟之前设计的调用关系是否一致,这在一定程度上也提高了开发人员对整体程序的把握和分析能力,通过一次的交易就可以一键生成所有的关系。所有这些附加价值都在很大程度上提高了整个软件中心的开发效率。
此外,鉴于中国银行网上银行产品的特殊性,以及开发环境等综合的原因,如果把探针部署在功能测试环境,当功能测试人员在测试网银时遇到问题需要和开发人员去沟通时,因为开发人员无法回溯整个测试过程的行为,只能从散落的日志里根据用户的ID分析、猜测一连串的行为,之后再定位、解决问题,就会有非常大的沟通成本,且效率十分低下。而在运用Dynatrace性能监测工具以后,中国银行可以对用户的ID进行分组和排序,将所有的日志信息串联起来,这样开发人员可以根据用户进行定位,从用户ID入手去分析用户的每一项请求,以及每一次的用户行为,包括日志信息、抛出的一些异常等等。因而很大程度的解决了中行软件中心在功能测试过程中进行问题排查,以及开发人员对功能测试人员和测试行为关联困难的问题。
确保全新开发模式的两大法宝
值得一提的一点是,最近这两年中国银行软件中心一直在积极尝试新的开发模式,并在一些新兴的产品上试点这种开发模式。一般情况下,开发模式下所有的开发人员都必须保持良好的沟通状态,而通常有效的沟通与交互是难以实现的。通过Dynatrace解决方案的应用,可帮助中国银行软件中心实现与测试人员的紧密配合,并收集不同压力情况下的数据变化,使得开发人员之间可以实时进行交流,从而快速发现一些性能的瓶颈点。进而,针对这些瓶颈点着手进行优化和处理,也可以从很大程度上提前预防性能的缺陷。
同时,当交易信息散落在不同时间,不同地点的时候,如果交易或产品出现异常,要从大量的信息中寻找蛛丝马迹的话,对于本身业务量庞大的内部开发团队来说,排查工作会相当的费时费力。而Dynatrace在这种情况下也可以对各种问题进行归纳总结,包括HTTP问题,运行时异常等等,让开发人员不再需要对散落在各个日志文件中的信息进行手工的统计和逐条确认,因此当有错误出现时,软件中心内部工作人员可以有效地开展排查,更好地掌控应用性能。
两方面推进数字化转型
未来,中国银行软件中心将在广度和深度两个维度上进一步提升自身的IT系统。
从广度上来说,中国银行实际上有近300个大的产品,因此后续工作的***步便是要将Dynatrace的解决方案推广到更多的产品上去。此外,之前Dynatrace的解决方案主要应用在开发阶段,而今后,中行软件中心将在软件开发的全生命周期——从开发、测试到后期的维护管理以及实施工作中,都应用全面的监控管理解决方案。
而从深度来讲,中行软件中心的目标跟Dynatrace在今年Perform Day用户大会上提出的主题非常契合,那就是进行“数字化转型”——对于一些重要的业务交易进行管理,通过对大数据的分析为运营决策提供支持;同时,实现对重要交易的可视化和精细化管理,从中分析整个业务流程的分支,以及它的焦点,进而优化整体的业务流程,提高用户的体验。