Dynatrace助力中國銀行應(yīng)用性能管理之路
原創(chuàng)【51CTO.com原創(chuàng)稿件】“下載個(gè)手機(jī)銀行APP,不僅能免費(fèi)轉(zhuǎn)賬匯款、購買理財(cái)產(chǎn)品等,還能隨時(shí)隨地查詢賬戶明細(xì),非常方便。”如今,越來越多的人漸漸習(xí)慣了使用手機(jī)銀行APP。這也意味著隨著移動(dòng)互聯(lián)網(wǎng)的快速發(fā)展,隨時(shí)隨地通過手機(jī)享受金融服務(wù)已經(jīng)成為當(dāng)前人們金融生活的主要方式。
然而,手機(jī)銀行的快速發(fā)展給后臺(tái)造成了很大的壓力。由于后臺(tái)產(chǎn)品是一個(gè)大的微服務(wù)架構(gòu),假如出現(xiàn)異常,排錯(cuò)會(huì)比較困難。如何提前識(shí)別性能問題,提高產(chǎn)品質(zhì)量,提升產(chǎn)品的交付信心,是后臺(tái)工作的重點(diǎn)和難點(diǎn),如何選擇合適的運(yùn)維監(jiān)控平臺(tái)就成了關(guān)鍵。
快速發(fā)展帶來的壓力
中國銀行手機(jī)銀行,定位于中國銀行的一個(gè)綜合金融移動(dòng)門戶。目前,手機(jī)銀行的覆蓋率大約達(dá)到了94%。一些重點(diǎn)產(chǎn)品有轉(zhuǎn)賬匯款、理財(cái)產(chǎn)品以及賬戶管理等功能。交易貢獻(xiàn)率達(dá)到了76%。中國銀行手機(jī)銀行也在融合大數(shù)據(jù)和AI,一直以提升用戶體驗(yàn)和豐富功能為目標(biāo)。據(jù)中國銀行軟件中心軟件工程師羅皓介紹,中國銀行手機(jī)銀行秉承微服務(wù)的理念將產(chǎn)品全面重構(gòu),同時(shí)將應(yīng)用從小機(jī)下移至X86平臺(tái)。經(jīng)過兩年的不斷探索和鉆研,目前已對(duì)外提供:APP多版本發(fā)布管理、定制信息云備份、配置中心、移動(dòng)端搜索引擎等微服務(wù)。
中國銀行軟件中心軟件工程師羅皓
移動(dòng)終端服務(wù)支持定位于為手機(jī)銀行等APP應(yīng)用提供服務(wù)支持。手機(jī)銀行月活數(shù)持續(xù)上升,日均APP啟動(dòng)數(shù)超過700萬次。面對(duì)不斷上漲的并發(fā)請(qǐng)求,產(chǎn)品組經(jīng)過四輪調(diào)優(yōu),基于分布式的微服務(wù)架構(gòu),承載能力較之前提升了3倍。
當(dāng)前隨著互聯(lián)網(wǎng)架構(gòu)的擴(kuò)張,越來越多的系統(tǒng)開始走向分布化,微服務(wù),消息收發(fā),分步式搜索引擎、分布式數(shù)據(jù)庫,分布式緩存、分布式對(duì)象存儲(chǔ)以及跨域調(diào)用,這些組件共同構(gòu)成了分布式系統(tǒng),是將巨大的單體應(yīng)用分解成多個(gè)可供管理的分支或服務(wù),解決了之前的單體應(yīng)用的復(fù)雜性問題,同時(shí)改善了故障隔離。這意味著當(dāng)有一個(gè)微服務(wù)宕機(jī)時(shí),不會(huì)影響到整個(gè)應(yīng)用或者正常正在運(yùn)行的服務(wù)。但同時(shí),當(dāng)外部有請(qǐng)求進(jìn)入系統(tǒng)時(shí),系統(tǒng)可能有數(shù)個(gè)乃至數(shù)十個(gè)微服務(wù)被調(diào)用,可謂牽一發(fā)而動(dòng)全身,為開發(fā)和測(cè)試帶來了困難。這時(shí)就需要一個(gè)工具來跟蹤調(diào)用分布式系統(tǒng),中國銀行手機(jī)銀行選擇了Dynatrace。
Dynatrace助力分布式節(jié)點(diǎn)下的性能排查
Dynatrace是APM市場(chǎng)的***者,連續(xù)數(shù)年蟬聯(lián)APM市場(chǎng)***名。
上圖表明,在應(yīng)用中配置Dynatrace十分簡(jiǎn)單,主要分為五步:安裝Agent,探針,把Dynatrace提供的第三方庫調(diào)入應(yīng)用當(dāng)中,配置服務(wù)器文件和應(yīng)用的啟動(dòng)文件,***支撐整個(gè)應(yīng)用。Dynatrace無縫嵌入應(yīng)用當(dāng)中,但是Dynatrace對(duì)代碼沒有任何侵入,十分安全快捷、簡(jiǎn)單。
羅皓介紹說,中國銀行手機(jī)銀行使用Dynatrace的應(yīng)用之一是分布式節(jié)點(diǎn)下的性能排查。
上圖是拓?fù)鋱D,每個(gè)節(jié)點(diǎn)上的事物,包括事物的執(zhí)行時(shí)間,以及事物的錯(cuò)誤率都被很直觀的展現(xiàn)了出來,而且點(diǎn)擊某個(gè)節(jié)點(diǎn),還可以深入單應(yīng)用拓?fù)鋱D,通過深入分析可以快速定位錯(cuò)誤。并且,每一個(gè)請(qǐng)求所耗費(fèi)的時(shí)間,包括CPU等待,IO等待,以及深入代碼層級(jí),每個(gè)方法的執(zhí)行時(shí)間都事無巨細(xì)的展現(xiàn)了出來,這源于Dynatrace具備端到端可視化能力,可深入分析到每一個(gè)數(shù)字化庫,提供了有價(jià)值且可操作的客戶深度分析。
上圖是使用效果。以往,如果在操作過程中出現(xiàn)BUG,就要不斷的嘗試,把服務(wù)器日志扒出來一臺(tái)臺(tái)排查。而使用Dynatrace之后,只要錯(cuò)誤出現(xiàn)過一次就會(huì)被記錄下來,包括報(bào)錯(cuò)的具體方法以及執(zhí)行時(shí)間,都可以展現(xiàn)出來,大大減少了開發(fā)和測(cè)試的工作量。
未來還將繼續(xù)深入合作
羅皓透露,未來,中國銀行手機(jī)銀行將在以下五個(gè)方面繼續(xù)使用Dynatrace,包括微服務(wù)跟蹤,應(yīng)用和架構(gòu)依賴分析,重點(diǎn)交易的監(jiān)控,性能監(jiān)控以及異常排查。
1、 微服務(wù)跟蹤。主要監(jiān)控跟蹤不同應(yīng)用間復(fù)雜的調(diào)用關(guān)系,應(yīng)用和架構(gòu)依賴關(guān)系。
2、 應(yīng)用和架構(gòu)依賴分析。指在開發(fā)和測(cè)試過程中,基礎(chǔ)架構(gòu)和應(yīng)用的依賴分析,基礎(chǔ)環(huán)境對(duì)應(yīng)用的影響分析。
3、 重點(diǎn)交易的監(jiān)控。包括登錄,搜索,云備份等重點(diǎn)交易的交易量,TPS,錯(cuò)誤率。
4、 性能監(jiān)控。通過性能分析模塊實(shí)時(shí)定位程序各部分響應(yīng)時(shí)間,協(xié)助開發(fā)人員定位性能瓶頸,同時(shí)檢查開發(fā)部署版本信息與性能影響。
5、 異常排查。通過異常模塊可以看到應(yīng)用拋出的所有異常類,信息,總數(shù),以及拋出方法,通過PurePath,可以快速定位錯(cuò)誤。
記者視點(diǎn)
在移動(dòng)金融迅速發(fā)展的今天,手機(jī)銀行的發(fā)展對(duì)銀行轉(zhuǎn)型發(fā)展發(fā)揮著重要的作用,Dynatrace人工智能全棧式監(jiān)控運(yùn)維平臺(tái)為企業(yè)客戶提供了基于人工智能技術(shù)的卓越應(yīng)用體驗(yàn)——速度更快、質(zhì)量更高,并可管理運(yùn)營復(fù)雜性,涵蓋紛繁復(fù)雜的云環(huán)境,從而確保了企業(yè)交付出色的客戶體驗(yàn),必將幫助銀行提高移動(dòng)金融的普及率和使用率。
【51CTO原創(chuàng)稿件,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文作者和出處為51CTO.com】