網(wǎng)站開發(fā)10種Web應(yīng)用程序的性能問題

2022-05-02    分類: 網(wǎng)站建設(shè)

很多網(wǎng)站開發(fā)程序員都都有這樣的體會Web應(yīng)用程序總是不可避免的會發(fā)生問題。但任何地方都可能出問題,有時候你只需要知道去哪找就可以了。云智互聯(lián)網(wǎng)站建設(shè)公司總結(jié)出十種開發(fā)與建設(shè)中容易出現(xiàn)問題的地方。
問題 1: 糟糕的代碼
糟糕的代碼會使網(wǎng)站開發(fā)應(yīng)用程序出現(xiàn)諸如算法低效、內(nèi)存溢出、以及死鎖等問題。軟件版本過舊,或是集成了歷史遺留的系統(tǒng)同樣會拖累性能。確保你的團(tuán)隊成員都在使用適合其崗位的工具 – 從自動化分析到好編程實踐的代碼審查工具。
問題 2:未經(jīng)優(yōu)化的數(shù)據(jù)庫
優(yōu)化好的數(shù)據(jù)庫可以達(dá)到很好的安全級別和處理性能,反之,沒有優(yōu)化的數(shù)據(jù)庫可能會拖垮生產(chǎn)環(huán)境下的應(yīng)用程序。索引的缺失會減慢SQL的查詢性能,從而使整個網(wǎng)站變慢。一定要用腳本和文件分析檢查任何低效的查詢。
問題 3:失控的數(shù)據(jù)增長
數(shù)據(jù)系統(tǒng)一般會隨時間的推移變慢。制定一項計劃來管理和監(jiān)控數(shù)據(jù),因為維持?jǐn)?shù)據(jù)的增長對高性能的Web應(yīng)用不可或缺。首先,找出業(yè)務(wù)中導(dǎo)致數(shù)據(jù)增長的主因。然后,研究并制定合適的存儲解決方案。留意所有數(shù)據(jù)庫、緩存、以及更復(fù)雜存儲方案的選項。
問題 4:流量峰值
我們通常認(rèn)為流量的增長是件好事。但是當(dāng)做完市場推廣或是經(jīng)歷了瘋狂傳播的熱門視頻后,應(yīng)用程序如果沒有做好相應(yīng)的準(zhǔn)備,任何人都知道流量峰值會造成什么結(jié)果。提前準(zhǔn)備是關(guān)鍵,同時搭建一個通過模擬用戶做監(jiān)測的預(yù)警系統(tǒng)例如 NeoSense。這樣一來,你就會提前發(fā)現(xiàn)流量增長影響到了業(yè)務(wù),從而避免了用戶的糟糕體驗。
問題 5:糟糕的負(fù)載分發(fā)
糟糕的分發(fā)機(jī)制會將新的請求分配到已經(jīng)當(dāng)機(jī)的服務(wù)器,而不是備用待機(jī)服務(wù)器上,導(dǎo)致服務(wù)器響應(yīng)速度急劇變慢。如果過多的人同時訪問同一個服務(wù)器,即使這個系統(tǒng)性能遠(yuǎn)低于瓶頸,還是會造成這樣的問題。利用類似NeoLoad的工具測試產(chǎn)品勢在必行,它有助于你發(fā)現(xiàn)任何薄弱的環(huán)節(jié)。
問題 6:默認(rèn)設(shè)置
系統(tǒng)必須適當(dāng)調(diào)整。默認(rèn)設(shè)置會讓一個新的組件很容易啟動并運(yùn)行,但對真正生產(chǎn)環(huán)境中的Web應(yīng)用程序來說未必適合。檢查每一項設(shè)定:線程數(shù)、內(nèi)存和權(quán)限分配。確保所有的配置參數(shù)匹配Web應(yīng)用程序的要求,而不是僅僅為了方便。
問題 7:DNS,防火墻,網(wǎng)絡(luò)連接
DNS 查詢占用了大部分的網(wǎng)站流量。這也是為什么DNS出了問題會引起很多麻煩,阻止訪問者正常訪問,拋出錯誤頁面、404、以及錯誤路徑。同樣的,網(wǎng)絡(luò)連接和防火墻的效率也是網(wǎng)站訪問能力和性能的關(guān)鍵。使用DNS監(jiān)控保障措施,以便找出手頭的問題。此外還可以修改交換機(jī)、檢查VLAN標(biāo)記、以及為不同服務(wù)器分配任務(wù)。上述也只是解決這類性能的一小部分方法。
問題 8:第三方服務(wù)出了問題
如果你的系統(tǒng)依賴了第三方服務(wù),那么有些變慢的問題是你無法掌控的。誰沒有經(jīng)歷過由于第三方廣告服務(wù)緩慢導(dǎo)致頁面加載的阻塞呢。如果你的用戶碰到了這類問題,必須確定問題是出在你的網(wǎng)站還是第三方。如果一定要用第三方服務(wù),調(diào)整網(wǎng)站時盡量減少因第三方服務(wù)出問題帶來的不利影響。最后,確保線下服務(wù)提供商為公司提供明確的性能保障。
問題 9:共享資源和虛擬機(jī)
現(xiàn)如今幾乎所有的Web應(yīng)用程序,從擴(kuò)展到管理再到系統(tǒng)恢復(fù),都依賴于虛擬服務(wù)器??捎袝r候上百個虛擬系統(tǒng)跑在了一個物理的服務(wù)器上,結(jié)果就會變成一個虛擬機(jī)掛掉會影響到所有其它的。畢竟,資源搶奪總是存在的。密切監(jiān)控系統(tǒng),當(dāng)其中一個虛擬機(jī)出了問題,你可以很快處理其產(chǎn)生的副作用。
問題 10:多米諾骨牌效應(yīng)
最后,一定要意識到某一個錯誤有可能會影響到其它很多你想不到的方方面面。多個問題會糾纏在一起,讓人很難確定到底發(fā)生了什么。你需要訓(xùn)練團(tuán)隊發(fā)現(xiàn)問題根源,通過回溯找到真正的罪魁禍?zhǔn)?。你甚至可以考慮Netflix 公司的 Chaos Monkey 模擬策略,通過引入網(wǎng)絡(luò)異常來探測系統(tǒng)彈性和恢復(fù)的能力。
積極主動地解決性能問題
目前你對常見的性能問題有了一個大致印象,事先做更高級別的用戶負(fù)載測試是非常必要的。一旦用戶開始使用你的網(wǎng)站,就可以利用產(chǎn)品環(huán)境中測試(TiP)流程。最后,使用模擬用戶腳本來模擬用戶導(dǎo)航和購買業(yè)務(wù),從而獲得反映網(wǎng)站短板的更準(zhǔn)確數(shù)據(jù)。從而更好的提高網(wǎng)站開發(fā)、網(wǎng)站建設(shè)的質(zhì)量。

分享題目:網(wǎng)站開發(fā)10種Web應(yīng)用程序的性能問題
網(wǎng)站鏈接:http://www.muchs.cn/news2/148552.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、網(wǎng)頁設(shè)計公司、App設(shè)計、網(wǎng)站策劃軟件開發(fā)、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司