无主之地2配置高吗|看真人裸体BBBBB|秋草莓丝瓜黄瓜榴莲色多多|真人強奷112分钟|精品一卡2卡3卡四卡新区|日本成人深夜苍井空|八十年代动画片

網易首頁 > 網易號 > 正文 申請入駐

時間減少90%以上!分布式系統的性能優化實戰

0
分享至

1背景

分布式批量系統指的是采用分布式數據庫架構,主體功能由批量程序實現的系統。分布式系統批量程序的性能測試,除了和聯機交易性能測試一樣關注服務器資源使用率是否合理、是否存在性能異常外,在測試執行階段需要關注是否因數據分布不均衡導致部分并發子程序執行時間過長,成為整體批量程序的“短板”,從而影響批量程序的整體時間。

下面我主要介紹一種分布式系統批量程序性能優化的思路,并結合實際測試效果說明。

2分布式系統分片和批量并發規則

被測系統數據庫為分布式數據庫,存儲并處理某公司各個機構的業務數據,包括若干個數據庫分片、500多個分片鍵(分布式表的一個主鍵字段,用來區分數據存放的分片),分片鍵值是由機構ID號(以下簡稱機構號)按照一定規則映射而來。每個分片包含若干分片鍵,某個分片鍵對應若干機構的數據。

批量程序執行時,根據系統相關配置表中的靜態配置,500多個子程序并發分別處理對應分片鍵下的業務數據。各個子程序處理邏輯相同,所以當某些子程序待處理的數據量相對其他子程序過多時(即該分片鍵下機構數據明顯多于其他分片鍵下數據),這些耗時長的子程序會拖慢整體程序的效率。

圖1分片與分片鍵對應關系

3搶任務方式優化數據分布不均衡的批量程序

3.1由靜態并發改造搶任務模式

根據系統按分片鍵靜態并發的特點,當批量程序子程序間處理數據分布不均衡時,部分子程序執行時間過長,成為整體批量程序的“短板”,從而影響批量的整體時間。為解決上述問題,本系統采取了“搶任務”的動態并發優化方法。

圖2搶任務改造前后批量程序邏輯對比

1)將待處理表中的所有數據,按照一定的維度(如機構號+該表的某個參數值)劃分成若干個任務,單個任務就是某個機構下某參數值對應的數據。

2)在實際處理數據程序執行之前,添加一個生成任務程序,執行該程序就會在任務表中添加全部任務的記錄,所有任務當前處于初始化狀態。

3)生成任務程序執行后,自動調起數據處理程序,改造后的程序不再按照靜態并發,而是去查詢任務表中狀態為初始化且數據量大(優先級高)的任務,任務結束時,處理狀態改為已完成,子程序查找下一個未處理的任務,直到任務表沒有狀態為初始化的任務,所有子程序成功執行完成。

實際測試場景執行時采用1600萬條數據對某批量程序(該程序處理的業務數據,各個分片鍵下的數據極不均衡,經分析適用于本優化方法)進行測試數據準備,按照優先級處理任務300個子程序動態并發執行,按當前維度共生成11萬個任務,所有子程序均在33分鐘內完成,無明顯過長的子程序,總體執行時間32分21秒,系統資源和數據庫資源利用率均正常。

3.2優化任務處理數據量

按前述優化的生成任務維度,有個別任務處理數據量仍然很大,如果不進行進一步拆分還是存在一定“短板”,且生成的任務過多,大量任務都是小數據量任務,處理數據程序頻繁搶“小任務”并更新數據的效率較低。為解決上述問題,程序進行了第二次優化。

1)生成任務時增加限制任務處理數據量的參數,該參數作用是規定單個任務的最大數據處理數,當同一分片鍵維度的任務處理數據量未達到這個值時,將這幾個任務合并為一個更大的任務,如果分片鍵發生了切換,則生成下一個任務。

2)對于原有維度拆分出來的大任務,通過增加維度的字段,使單個維度的處理數據量降低,這樣一個維度包含的數據更小,同時也參照上述參數限定任務最大數據處理數。

上述優化主要目標即控制個別“大任務”的處理數據量,合并多數“小任務”,使任務總量變少,減少搶任務造成的時間成本,并且任務之間處理數據量更均衡。

按上述策略優化的生成任務程序和數據處理程序,并發數不變,仍然采用同樣數據進行準備并執行測試,由于生成任務的規則變化,生成的任務量由原來的10萬以上降低到1000以內,生成任務時間增為2分40秒,執行數據處理程序時間降低為12分33秒,生成任務和處理數據的總執行時間比第一次優化明顯提升。下表是兩次優化執行性能測試執行時間對比。

該批量程序按上述策略兩次優化后,生產環境中處理時間由優化前的近4小時縮短到15分鐘左右,時間減少90%以上,且系統資源運行平穩,無性能瓶頸。

4總結及展望

通過分布式系統的性能測試實踐,我們根據系統特點在批量程序性能優化方面積累了一定經驗。搶任務性能優化方式解決了批量程序不同分片鍵處理數據量不均衡導致的執行時間過長問題,在項目測試中取得了明顯的優化效果。

未來我還將持續探索分布式系統的批量測試技術和測試方法,加強系統分析與調優能力,為提升分布式批量系統效率及可靠性繼續努力。

最后:在我的V:atstudy-js,可以免費領取一份10G軟件測試工程師面試寶典文檔資料。以及相對應的視頻學習教程免費分享!其中包括了有基礎知識、Linux必備、Shell、互聯網程序原理、Mysql數據庫、抓包工具專題、接口測試工具、測試進階-Python編程、Web自動化測試、APP自動化測試、接口自動化測試、測試高級持續集成、測試架構開發測試框架、性能測試、安全測試等。

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
很多人愛喝的咖啡品牌,被申請破產,曾估值10億

很多人愛喝的咖啡品牌,被申請破產,曾估值10億

中國新聞周刊
2026-06-10 23:33:47
凈利潤大降1563%!A股又一公司被立案,超3萬股民受損

凈利潤大降1563%!A股又一公司被立案,超3萬股民受損

21世紀經濟報道
2026-06-12 20:42:57
微信出現這條杠,就是被好友刪了

微信出現這條杠,就是被好友刪了

呼呼歷史論
2026-06-10 18:15:48
“中國好人”花2500萬買到銀行抵押房,幫賣家還錢解押次日又遭抵押貸款;當事人懷疑銀行與賣家串通合謀

“中國好人”花2500萬買到銀行抵押房,幫賣家還錢解押次日又遭抵押貸款;當事人懷疑銀行與賣家串通合謀

大風新聞
2026-06-12 17:37:15
北京現代三款新車齊發 精簡產品線能否重回增長賽道

北京現代三款新車齊發 精簡產品線能否重回增長賽道

周哥一影視
2026-06-13 07:27:56
211院校降為普通本科!

211院校降為普通本科!

老呂教你考MBA
2026-06-02 11:57:50
41歲夫妻因“房事頻繁”雙雙入院,醫生提醒:每周不應超過一個數

41歲夫妻因“房事頻繁”雙雙入院,醫生提醒:每周不應超過一個數

路醫生健康科普
2026-06-03 16:36:08
這很科學:89%的人幻想過同時和多人發生性行為,算精神出軌嗎?

這很科學:89%的人幻想過同時和多人發生性行為,算精神出軌嗎?

宇宙時空
2026-05-26 18:20:10
寶馬iX3青藏高原實測:百公里12.6度電,無補能跑800公里

寶馬iX3青藏高原實測:百公里12.6度電,無補能跑800公里

Ping值焦慮
2026-06-12 03:17:58
中國游客到朝鮮游玩,朝鮮人充滿疑問:為什么中國人是這樣的?

中國游客到朝鮮游玩,朝鮮人充滿疑問:為什么中國人是這樣的?

共工之錨
2026-06-10 00:25:42
葡萄牙6-1血洗加拿大,雷戈梅開二度領跑射手榜,決賽對陣突尼斯

葡萄牙6-1血洗加拿大,雷戈梅開二度領跑射手榜,決賽對陣突尼斯

林子說事
2026-06-12 19:37:51
韓國前國腳李乙容:我兒子踢世界杯我比自己當球員時還緊張

韓國前國腳李乙容:我兒子踢世界杯我比自己當球員時還緊張

懂球帝
2026-06-12 18:24:14
第五局完成逆轉!陳俊菘3-2林詩棟晉級薩格勒布挑戰賽八強!

第五局完成逆轉!陳俊菘3-2林詩棟晉級薩格勒布挑戰賽八強!

籃球資訊達人
2026-06-13 00:40:51
阿爾特塔自毀長城!阿森納 1700 萬清洗功臣,歐冠大腿說走就走

阿爾特塔自毀長城!阿森納 1700 萬清洗功臣,歐冠大腿說走就走

瀾歸序
2026-06-13 06:16:17
突然想到的一個地獄笑話

突然想到的一個地獄笑話

陳意小可愛
2026-06-12 18:48:31
他曾是江蘇省副省長,連任了兩屆中央委員,1980年卻主動辭去職務

他曾是江蘇省副省長,連任了兩屆中央委員,1980年卻主動辭去職務

兵卒史
2026-06-13 00:35:05
馬科斯沒料到,等來的不是中國的援助,而是菲防長被制裁通知書

馬科斯沒料到,等來的不是中國的援助,而是菲防長被制裁通知書

塵世閑云
2026-06-13 07:27:55
這次,俞灝明苦苦維持的體面,被王曉晨撕的稀碎,鄭愷早有提醒

這次,俞灝明苦苦維持的體面,被王曉晨撕的稀碎,鄭愷早有提醒

打小我就醜
2026-06-04 12:37:40
“父弱母強”的家庭:養出來的孩子,基本都有三個共性

“父弱母強”的家庭:養出來的孩子,基本都有三個共性

枕邊聊育兒
2026-06-12 09:23:03
“清淡飲食”正在毀掉中老年人的血管!我國近20%的老年人患有肌少癥,不吃肉,血管反而越來越脆

“清淡飲食”正在毀掉中老年人的血管!我國近20%的老年人患有肌少癥,不吃肉,血管反而越來越脆

消化石醫生
2026-06-05 21:28:28
2026-06-13 08:48:49
51Testing軟件測試網 incentive-icons
51Testing軟件測試網
中國軟件測試人的精神家園
1588文章數 13274關注度
往期回顧 全部

科技要聞

剛剛,人類歷史上首位萬億美元富豪誕生!

頭條要聞

47歲泰國長公主去世 70多歲泰王現繼承危機

頭條要聞

47歲泰國長公主去世 70多歲泰王現繼承危機

體育要聞

歐洲恐韓?肉德維德?

娛樂要聞

一天4個瓜,肖戰熱巴最意外

財經要聞

梁文鋒向左,楊植麟向右

汽車要聞

標配激光雷達/雙動力可選 昊鉑S600限時售17.99萬起

態度原創

教育
時尚
旅游
本地
房產

教育要聞

從“中間”到“中堅”——學校中層管理者的修煉與升維 | 劉玉

今日熱點:白鹿起訴蒙淇淇;岳云鵬回應開演唱會質疑……

旅游要聞

這個夏天,在鄭州這些地方可以看“海”

本地新聞

AK劉彰邂逅河北南大港濕地

房產要聞

海南最賺錢行業曝光!最快4年半,海口全款買三房!

無障礙瀏覽 進入關懷版