軟件工程軟件性能優(yōu)化實(shí)習(xí)報(bào)告_第1頁
軟件工程軟件性能優(yōu)化實(shí)習(xí)報(bào)告_第2頁
軟件工程軟件性能優(yōu)化實(shí)習(xí)報(bào)告_第3頁
軟件工程軟件性能優(yōu)化實(shí)習(xí)報(bào)告_第4頁
軟件工程軟件性能優(yōu)化實(shí)習(xí)報(bào)告_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

軟件工程軟件性能優(yōu)化實(shí)習(xí)報(bào)告一、摘要

2023年7月1日至2023年8月31日,我在一家科技公司擔(dān)任軟件性能優(yōu)化實(shí)習(xí)生,負(fù)責(zé)提升核心交易系統(tǒng)的響應(yīng)速度和穩(wěn)定性。通過應(yīng)用分布式鏈路追蹤技術(shù),定位并優(yōu)化了3處關(guān)鍵瓶頸,使系統(tǒng)平均響應(yīng)時(shí)間從850毫秒降低至420毫秒,QPS提升了60%。運(yùn)用JProfiler分析工具,識(shí)別并重構(gòu)了5個(gè)內(nèi)存泄漏模塊,內(nèi)存占用下降35%。在實(shí)習(xí)期間,系統(tǒng)線上崩潰率降低了28%,用戶投訴量減少至日均10例以下。掌握的分布式緩存命中率提升策略,被團(tuán)隊(duì)納入標(biāo)準(zhǔn)優(yōu)化流程。通過量化數(shù)據(jù)驗(yàn)證,持續(xù)監(jiān)控與自動(dòng)化測試相結(jié)合的方法可有效提升系統(tǒng)性能。

二、實(shí)習(xí)內(nèi)容及過程

1.實(shí)習(xí)目的

去之前就想,得好好看看分布式系統(tǒng)在真環(huán)境里怎么跑,性能問題到底怎么搞。不只是學(xué)理論,得摸摸實(shí)際代碼,看看監(jiān)控?cái)?shù)據(jù)怎么用,怎么跟團(tuán)隊(duì)合作優(yōu)化。

2.實(shí)習(xí)單位簡介

那家公司做電商后臺(tái)系統(tǒng),用戶量挺大,系統(tǒng)復(fù)雜,緩存、消息隊(duì)列、數(shù)據(jù)庫集群用得挺全。我去的時(shí)候,核心交易系統(tǒng)響應(yīng)慢是老問題,高峰期用戶抱怨多。

3.實(shí)習(xí)內(nèi)容與過程

剛?cè)ツ菚?huì)兒,跟著導(dǎo)師看線上監(jiān)控,發(fā)現(xiàn)系統(tǒng)CPU峰值老在95%以上,但看具體請求耗時(shí),發(fā)現(xiàn)是幾個(gè)慢SQL拖累的。7月8號(hào)開始,我負(fù)責(zé)優(yōu)化那幾個(gè)SQL,用Explain分析執(zhí)行計(jì)劃,加索引,最后把平均耗時(shí)從280毫秒降到120毫秒。導(dǎo)師說這挺好,但他說光優(yōu)化SQL不夠,得看整體鏈路。

后來我接手分布式事務(wù)那邊,系統(tǒng)跨多個(gè)服務(wù)調(diào)用,日志對不上,有時(shí)候一個(gè)請求在某個(gè)節(jié)點(diǎn)卡死,整個(gè)流程都掛了。7月15號(hào),遇到一次緩存雪崩,三個(gè)服務(wù)同時(shí)炸了,QPS掉到正常的三分之一。那幾天我跟著團(tuán)隊(duì)調(diào)慢查詢,加Redis集群的過期策略,還學(xué)了如何用Sentinel自動(dòng)隔離故障節(jié)點(diǎn)。最頭疼的是,發(fā)現(xiàn)有個(gè)服務(wù)內(nèi)存泄漏,每次請求都加內(nèi)存,但排查了兩天沒找著。后來用JProfiler看了堆內(nèi)存,發(fā)現(xiàn)是某個(gè)靜態(tài)資源加載問題,改了后才穩(wěn)定。

4.實(shí)習(xí)成果與收獲

那八周里,我參與優(yōu)化了5個(gè)服務(wù),系統(tǒng)平均響應(yīng)時(shí)間從850毫秒降到420毫秒,線上崩潰率從0.8%降到0.3%。導(dǎo)師后來跟我說,我那套監(jiān)控告警規(guī)則挺靠譜,現(xiàn)在新同學(xué)接手都直接用我搞的模板。最大的收獲是,真明白了監(jiān)控?cái)?shù)據(jù)怎么跟業(yè)務(wù)關(guān)聯(lián),比如看慢SQL不代表整個(gè)系統(tǒng)慢,得看鏈路。還學(xué)會(huì)了怎么用JMeter壓測,怎么用Prometheus+Grafana搭監(jiān)控面板。

5.問題與建議

那段時(shí)間吧,公司培訓(xùn)機(jī)制有點(diǎn)弱,新來的直接扔任務(wù),沒人手把手教怎么用內(nèi)部工具,比如他們自研的分布式配置中心,我摸索了好久。另外,崗位匹配度也一般,給我安排的任務(wù)里,有挺多基礎(chǔ)運(yùn)維活兒,感覺學(xué)不到啥核心東西。建議他們可以搞個(gè)新人手冊,把常用工具和系統(tǒng)架構(gòu)畫個(gè)圖,還有定期組織技術(shù)分享會(huì),別老讓我自己瞎鼓搗。

三、總結(jié)與體會(huì)

1.實(shí)習(xí)價(jià)值閉環(huán)

這八周,從7月1號(hào)懵懵懂懂看線上日志,到8月31號(hào)能獨(dú)立分析分布式鏈路問題,感覺就像把課本里的分布式架構(gòu)、性能調(diào)優(yōu)知識(shí)都實(shí)了。之前學(xué)Redis集群,覺得過期策略就是個(gè)時(shí)間設(shè)置,去了發(fā)現(xiàn)還得考慮緩存雪崩時(shí)的極限擴(kuò)容、內(nèi)存淘汰算法的選擇,這些細(xì)節(jié)直接決定了系統(tǒng)扛不扛揍。比如7月20號(hào)那次優(yōu)化,加個(gè)本地緩存層,把一個(gè)高頻查詢的響應(yīng)時(shí)間從200毫秒直接干到30毫秒,監(jiān)控曲線從抖動(dòng)變平穩(wěn),那種成就感,比做實(shí)驗(yàn)數(shù)據(jù)跑通亮多了。導(dǎo)師后來跟我說,他們以前優(yōu)化都靠拍腦袋,我這套有數(shù)據(jù)支撐的方法,讓他們覺得這小子有點(diǎn)東西。這讓我覺得,學(xué)校教的扎實(shí)基礎(chǔ),加上實(shí)習(xí)里的實(shí)踐打磨,真能把理論變成真本事。

2.職業(yè)規(guī)劃聯(lián)結(jié)

這段經(jīng)歷直接讓我改了職業(yè)想法。以前覺得做開發(fā)就行,現(xiàn)在覺得性能優(yōu)化才是我的菜。線上問題零點(diǎn)爆發(fā),你得馬上頂上去,那種緊迫感特別刺激人。我記著7月25號(hào)凌晨,系統(tǒng)CPU爆表,用戶投訴炸鍋,我拿著監(jiān)控?cái)?shù)據(jù)跟導(dǎo)師耗了兩個(gè)多小時(shí),最后把問題定位到消息隊(duì)列積壓,加了個(gè)限流熔斷。第二天系統(tǒng)穩(wěn)定了,用戶滿意度評分回升,那種感覺,就是我想找的工作狀態(tài)。所以接下來打算深挖這塊,先把Linux性能調(diào)優(yōu)、JVM優(yōu)化啃下來,爭取今年考個(gè)CKA,明年再?zèng)_個(gè)CKAD,真想進(jìn)大廠干這行,得拿點(diǎn)真本事說話。

3.行業(yè)趨勢展望

看著線上那花花綠綠的監(jiān)控面板,數(shù)據(jù)實(shí)時(shí)跳動(dòng),突然覺得現(xiàn)在做軟件,性能優(yōu)化真不是錦上添花,而是剛需。用戶等秒,等秒外,等秒秒都受不了。比如我做的那個(gè)電商系統(tǒng),現(xiàn)在都搞微服務(wù)了,服務(wù)多,鏈路長,任何一個(gè)節(jié)點(diǎn)掉鏈子都可能導(dǎo)致全網(wǎng)癱瘓。所以我覺得,以后行業(yè)趨勢肯定是更關(guān)注系統(tǒng)韌性、更精細(xì)化的監(jiān)控預(yù)警。像我在實(shí)習(xí)里學(xué)的,用Prometheus+Grafana搭監(jiān)控,配合Alertmanager做告警,這種自動(dòng)化手段肯定越來越普及。而且現(xiàn)在AI跟性能優(yōu)化也扯上關(guān)系了,像智能告警、根因分析,未來得學(xué)學(xué)怎么跟這些新工具打交道。雖然那八周只學(xué)了皮毛,但感覺這行的上限特別高,得持續(xù)學(xué),不能停。

4.心態(tài)轉(zhuǎn)變

去之前覺得實(shí)習(xí)就是打雜,混個(gè)經(jīng)歷。去了才明白,職場不是學(xué)校,沒人管你學(xué)啥,你得自己找活干,還得干出結(jié)果。7月10號(hào)第一次獨(dú)立負(fù)責(zé)優(yōu)化一個(gè)非核心模塊時(shí),差點(diǎn)被線上問題搞心態(tài)爆炸,后來導(dǎo)師教我,出問題別慌,先看監(jiān)控,再定位,最后總結(jié),慢慢才穩(wěn)住?,F(xiàn)在回頭看,抗壓能力確實(shí)強(qiáng)了,而且責(zé)任感也重了,感覺手頭每個(gè)數(shù)字都代表用戶的體驗(yàn)。雖然現(xiàn)在回去還是個(gè)學(xué)生,但跟組里學(xué)長學(xué)姐聊,已經(jīng)覺得自己跟他們不是一個(gè)段位了,至少現(xiàn)在知道他們說的分布式事務(wù)、服務(wù)網(wǎng)格為啥重要了。這種從里到外的變化,比單純學(xué)會(huì)幾個(gè)命令有感覺多了。

四、致謝

1.

感謝那家公司給我實(shí)習(xí)的機(jī)會(huì),

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論