本說明書涉及金融科技,尤其是涉及一種基于交易時序圖的客戶端性能優化方法及裝置。
背景技術:
1、在客戶端的啟動及運行過程中,客戶端需要不斷調用多種交易,這些交易需要在服務端的支持下,通過客戶端與服務端不斷進行通信交互才得以實現,由于客戶端與服務端之間的交互時序和耗時影響著客戶端的性能,因此實時生成客戶端在使用過程中的時序圖對于了解客戶端的運行情況以及性能優化非常重要,然而現有的時序圖繪制常常采用人工繪制的方式,難以基于時序圖快速了解客戶端的交易時序、排查問題、組合交易以及優化交易耗時等,導致對客戶端的性能優化存在排查局限性以及效果差的問題,因此,亟需一種基于交易時序圖的客戶端性能優化方法及裝置,改善客戶端的性能優化存在排查局限性,提高客戶端性能優化效果。
技術實現思路
1、鑒于目前改善客戶端的性能優化存在排查局限性,客戶端性能優化效果差,提出了本方案以便克服上述問題或者至少部分地解決上述問題。
2、一方面,本說明書的一些實施例的目的在于提供一種基于交易時序圖的客戶端性能優化方法,所述方法包括:
3、接收客戶端性能優化請求;
4、根據所述客戶端性能優化請求獲取客戶端的目標任務執行信息;
5、根據目標任務執行信息,將所述目標任務執行信息中的多個交易生成目標任務的交易時序圖;
6、判斷所述目標任務的交易時序圖是否存在交易高耗時情況;
7、若所述目標任務的交易時序圖存在交易高耗時情況,則根據所述目標任務執行信息得到所述目標任務的任務類型,并且查找得到與所述目標任務具有相同任務類型屬性的歷史任務執行信息,以利用所述歷史任務執行信息中的多個交易生成歷史任務的交易時序圖;
8、對所述目標任務的交易時序圖及歷史任務的交易時序圖進行異常分析,得到異常分析結果;所述異常分析結果至少包括網絡環境分析結果、客戶端所在的設備環境分析結果以及客戶端業務邏輯分析結果中的一種或多種;
9、根據所述異常分析結果匹配對應的目標性能優化策略;
10、利用所述目標性能優化策略對客戶端性能進行優化。
11、進一步地,所述根據所述客戶端性能優化請求獲取客戶端的目標任務執行信息,包括:
12、記錄所述客戶端性能優化請求對應的初始時間;
13、利用預設的接口從客戶端原生庫獲取在所述初始時間之后的業務請求;
14、基于所述業務請求及所述業務請求對應的交易過程分別建立第一集合、第二集合以及第三集合;
15、將所述第一集合、第二集合以及第三集合作為所述目標任務執行信息。
16、進一步地,所述基于所述業務請求及所述業務請求對應的交易過程分別建立第一集合、第二集合以及第三集合,包括:
17、根據所述業務請求對應的交易碼建立所述第一集合;
18、從預設的交易碼描述匹配表中匹配所述交易碼對應的交易碼描述;
19、根據所述交易碼描述與交易碼之間的映射關系建立所述第二集合;
20、獲取所述業務請求對應的多個交易的發起時間和數據流向,以及報文上行時間或報文下行時間;
21、根據所述交易碼對應的發起時間、數據流向,以及報文上行時間或報文下行時間建立所述第三集合。
22、進一步地,所述根據目標任務執行信息,將所述目標任務執行信息中的多個交易生成目標任務的交易時序圖,包括:
23、根據目標任務執行信息從所述第一集合中確定目標任務的交易碼;
24、從所述第三集合中獲取目標任務的交易碼對應的發起時間和數據流向,以及報文上行時間或報文下行時間;
25、根據目標任務的交易碼對應的發起時間,以及報文上行時間或報文下行時間,確定所述目標任務的交易碼所對應的交易次序及交易耗時;
26、利用所述交易次序對所述目標任務的交易碼進行排序;
27、根據排序結果及數據流向繪制目標任務的交易次序圖;
28、從所述第二集合中獲取目標任務的交易碼對應的交易碼描述;
29、根據所述目標任務的交易次序圖中交易碼對應的交易耗時及交易碼描述,基于所述目標任務的交易次序圖,生成所述目標任務的交易時序圖。
30、進一步地,所述判斷所述目標任務的交易時序圖是否存在交易高耗時情況,包括:
31、判斷所述目標任務的交易時序圖是否存在交易耗時大于第一閾值的交易;
32、若存在,則所述目標任務的交易時序圖存在交易高耗時情況;
33、若不存在,則判斷所述目標任務的交易時序圖對應的交易總耗時是否大于第二閾值;
34、若所述交易總耗時大于第二閾值,則所述目標任務的交易時序圖存在交易高耗時情況;
35、若所述交易總耗時不大于第二閾值,則所述目標任務的交易時序圖不存在交易高耗時情況。
36、進一步地,所述客戶端的任務執行信息還包括任務標識碼及任務類型,所述任務類型根據任務的業務場景確定。
37、進一步地,所述對所述目標任務的交易時序圖及歷史任務的交易時序圖進行異常分析,包括:
38、對所述目標任務的交易時序圖及歷史任務的交易時序圖進行基于懲罰項的相似度計算;基于懲罰項的相似度計算因子包括交易時序圖、網絡環境、客戶端所在的設備環境以及客戶端業務邏輯;
39、判斷相似度是否大于第三閾值;
40、若所述相似度大于第三閾值,則將對相似度進行排序,以確定最大相似度對應的歷史交易時序圖,并將最大相似度對應的歷史任務的交易時序圖作為歷史目標交易時序圖;
41、判斷所述目標任務的交易時序圖及歷史任務的交易時序圖的客戶端業務邏輯是否相同;
42、若所述目標任務的交易時序圖及歷史任務的交易時序圖的客戶端業務邏輯相同,則將歷史目標交易時序圖對應的歷史異常分析結果作為第一異常分析結果;
43、若所述目標任務的交易時序圖及歷史任務的交易時序圖的客戶端業務邏輯不同,則評估目標任務的交易時序圖及歷史任務的交易時序圖中客戶端業務邏輯對所述交易時序圖、網絡環境以及客戶端所在的設備環境的重要程度;
44、若所述重要程度小于第四閾值,則將所述歷史目標交易時序圖對應的歷史異常分析結果作為第二異常分析結果;
45、若所述重要程度不小于第四閾值,則將所述目標任務的交易時序圖及其對應的網絡環境、客戶端所在的設備環境以及客戶端業務邏輯輸入至預訓練的第一分析模型中,得到第三異常分析結果;其中,所述第一分析模型內嵌注意力模塊,利用歷史交易時序圖訓練得到,所述注意力模塊用于關注客戶端業務邏輯對交易耗時及交易總耗時的影響力,并且所述第三異常分析結果至少包括客戶端業務邏輯分析結果;
46、若所述相似度不大于第三閾值,則將所述目標任務的交易時序圖及其對應的網絡環境、客戶端所在的設備環境以及客戶端業務邏輯輸入至預訓練的第二分析模型中,得到第四異常分析結果,其中,所述第二分析模型利用歷史交易時序圖訓練得到,所述第二分析模型的網絡結構與去除所述注意力模塊的第一分析模型相同,并且所述第四異常分析結果至少包括網絡環境分析結果、客戶端所在的設備環境分析結果以及客戶端業務邏輯分析結果中的一種或多種。
47、進一步地,所述根據所述異常分析結果匹配對應的目標性能優化策略前,進一步包括:
48、對所述歷史任務的交易時序圖進行篩選,得到歷史問題交易時序圖;
49、根據所述歷史任務的交易時序圖及其對應的第一歷史異常分析結果建立第一特征向量;
50、查找所述歷史任務的交易時序圖所對應的若干個相鄰的歷史時序交易圖;
51、根據所述相鄰的歷史時序交易圖及其對應的第二歷史異常分析結果建立第二特征向量;
52、拼接所述第一特征向量與第二特征向量,得到第三特征向量;其中,所述第一特征向量的維度與第一歷史異常分析結果相匹配,所述第二特征向量的維度與第二歷史異常分析結果相匹配,所述第三特征向量的維度與所述第一歷史異常分析結果及第二歷史異常分析結果相匹配;
53、利用歷史性能問題經驗庫確定所述第三特征向量對應的標簽;
54、基于所述第三特征向量的維度對所述第三特征向量進行分類;
55、根據分類后的第三特征向量及其對應的標簽進行深度學習訓練,得到不同維度分類下的多個性能優化策略預測模型。
56、進一步地,所述根據所述異常分析結果匹配對應的目標性能優化策略,包括:
57、當所述異常分析結果為第一異常分析結果或第二異常分析結果時,將歷史目標交易時序圖對應的性能優化策略作為所述目標性能優化策略;所述歷史目標交易時序圖對應的性能優化策略根據歷史性能問題經驗庫或所述性能優化策略預測模型得到;
58、當所述異常分析結果為第三異常分析結果或第四異常分析結果時,確定與所述異常分析結果的維度相匹配的性能優化策略預測模型,并將所述異常分析結果輸入至匹配得到的性能優化策略預測模型中,得到所述目標性能優化策略。
59、進一步地,一些實施例中,進一步包括:
60、所述異常分析結果至少包括網絡環境分析結果、客戶端所在的設備環境分析結果、客戶端業務邏輯分析結果以及服務器環境分析結果中的一種或多種,以使所述目標性能優化策略包括針對客戶端的目標性能優化策略和/或針對服務端的目標性能優化策略,從而利用所述目標性能優化策略對客戶端性能和/或服務端性能進行優化。
61、另一方面,本說明書的一些實施例還提供一種基于交易時序圖的客戶端性能優化裝置,所述裝置包括:
62、接收模塊,用于接收客戶端性能優化請求;
63、獲取模塊,用于根據所述客戶端性能優化請求獲取客戶端的目標任務執行信息;
64、繪制模塊,用于根據目標任務執行信息,將所述目標任務執行信息中的多個交易生成目標任務的交易時序圖;
65、判斷模塊,用于判斷所述目標任務的交易時序圖是否存在交易高耗時情況;
66、生成模塊,用于若所述目標任務的交易時序圖存在交易高耗時情況,則根據所述目標任務執行信息得到所述目標任務的任務類型,并且查找得到與所述目標任務具有相同任務類型屬性的歷史任務執行信息,以利用所述歷史任務執行信息中的多個交易生成歷史任務的交易時序圖;
67、分析模塊,用于對所述目標任務的交易時序圖及歷史任務的交易時序圖進行異常分析,得到異常分析結果;所述異常分析結果至少包括網絡環境分析結果、客戶端所在的設備環境分析結果以及客戶端業務邏輯分析結果中的一種或多種;
68、匹配模塊,用于根據所述異常分析結果匹配對應的目標性能優化策略;
69、優化模塊,用于利用所述目標性能優化策略對客戶端性能進行優化。
70、另一方面,本說明書的一些實施例還提供了一種計算機設備,包括存儲器、處理器、以及存儲在所述存儲器上的計算機程序,所述計算機程序被所述處理器運行時,執行上述方法的指令。
71、另一方面,本說明書的一些實施例還提供了一種計算機存儲介質,其上存儲有計算機程序,所述計算機程序被計算機設備的處理器運行時,執行上述方法的指令。
72、另一方面,本說明書的一些實施例還提供了一種計算機程序產品,所述計算機程序產品包括計算機程序,所述計算機程序被計算機設備的處理器運行時,執行上述方法的指令。
73、本說明書的一些實施例提供的一個或者多個技術方案,至少具有如下的技術效果:
74、本說明書的實施例首先自動接收客戶端性能優化請求,以獲取客戶端的目標任務執行信息,之后將目標任務執行信息中的多個交易生成目標任務的交易時序圖,以判斷目標任務的交易時序圖是否存在交易高耗時情況,若存在交易高耗時情況,則需要進行異常分析,此時首先調用歷史任務執行信息,該歷史任務執行信息與目標任務具體屬于相同任務類型,以根據歷史任務執行信息中的多個交易生成歷史任務的交易時序圖,之后將目標任務的交易時序圖及歷史任務的交易時序圖作為整體進行異常分析,保證異常分析結果的精確性,異常分析內容至少包括網絡環境、客戶端所在的設備環境以及客戶端業務邏輯中的一種或多種,相應地,異常分析結果至少包括網絡環境分析結果、客戶端所在的設備環境分析結果以及客戶端業務邏輯分析結果中的一種或多種,以保證異常分析過程的客觀性、有效性和完備性,從而根據異常分析結果快速匹配合適目標性能優化策略,以利用目標性能優化策略對客戶端性能進行高效、精準優化,降低客戶端性能優化排查難度。
75、上述說明僅是本說明書的一些實施例技術方案的概述,為了能夠更清楚了解本說明書的一些實施例的技術手段,而可依照說明書的內容予以實施,并且為了讓本說明書的一些實施例的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本說明書的一些實施例的具體實施方式。