日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何在短时间内快速提升网站响应速度

發(fā)布時(shí)間:2023/12/14 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何在短时间内快速提升网站响应速度 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言:

????????目的:我從事軟件性能優(yōu)化工作多年,想在此總結(jié)一下網(wǎng)站性能優(yōu)化的一些實(shí)戰(zhàn)經(jīng)驗(yàn)。

????????背景:當(dāng)你負(fù)責(zé)公司網(wǎng)站運(yùn)維時(shí)往往會(huì)遇到以下場景:領(lǐng)導(dǎo)要你維護(hù)一個(gè)開發(fā)人員趕工期開發(fā)出來的一個(gè)新網(wǎng)站。而新網(wǎng)站往往bug多,更沒有經(jīng)過什么性能優(yōu)化。網(wǎng)站上線以后用戶量一大,就會(huì)面臨請(qǐng)求慢、頁面卡頓等問題。有時(shí)候甚至?xí)l(fā)服務(wù)器cpu、帶寬、內(nèi)存、硬盤等硬件設(shè)備滿載。這時(shí)候就需要你對(duì)這個(gè)網(wǎng)站進(jìn)行性能優(yōu)化。往往需要你:用最小的工作量、最短的時(shí)間、最少的代價(jià),最大程度地提升網(wǎng)站響應(yīng)速度。

????????本文所面向的受眾:本文描述的性能優(yōu)化手段適用于中、小型網(wǎng)站。因?yàn)槲夷壳熬S護(hù)的網(wǎng)站規(guī)模屬于日活越用戶量(DUA)在一萬級(jí)別的中型網(wǎng)站規(guī)模。

????????性能優(yōu)化遵循的兩個(gè)原則:木桶效應(yīng)與二八定律

????????這是我總結(jié)的兩個(gè)原則,理解這兩個(gè)原則,可以幫助您在性能優(yōu)化過程中省時(shí)省力、抓住重點(diǎn)、有的放矢。畢竟每個(gè)人的時(shí)間精力有限,不要把它花在效益不高的地方~

????????木桶效應(yīng):

? ? ? ? 我們知道,一只木桶的盛水量,取決于桶壁上最短的那塊。同樣,一個(gè)軟件或網(wǎng)站的運(yùn)行流暢程度,取決于運(yùn)行速度最慢的環(huán)節(jié)。

????????舉例:一個(gè)網(wǎng)絡(luò)請(qǐng)求從發(fā)起到結(jié)束,一般要經(jīng)歷用戶操作頁面、瀏覽器發(fā)起請(qǐng)求、域名解析、HTTP\HTTPS請(qǐng)求、WEB服務(wù)器響應(yīng)請(qǐng)求(涉及cpu、內(nèi)存、數(shù)據(jù)庫等的運(yùn)行)、返回響應(yīng)數(shù)據(jù)、客戶端瀏覽器下載響應(yīng)數(shù)據(jù)并渲染數(shù)據(jù)。期間每個(gè)環(huán)節(jié)都可能成為短板,比如:短板可能是服務(wù)器硬件條件差、數(shù)據(jù)庫設(shè)計(jì)不合理、代碼組織不合理、視頻圖片文件太大加載慢等等因素。

????????木桶效應(yīng)告訴我們,性能優(yōu)化的“理想過程”往往是:先找出最短的短板,然后給他加長,然后再找下一塊最短的短板,再加長,循環(huán)往復(fù)。

????????二八定律:

????????生活中,世界上80%的財(cái)富掌握在20%的人手里。軟件中,一個(gè)軟件的性能由20%甚至10%的環(huán)節(jié)所決定。.

? ? ? ? 引用一段《.net 性能優(yōu)化》中Vance Morrison的話:一般來說,你的應(yīng)用程序中有超過90%的代碼對(duì)性能是不敏感的,它可以使用程序員生產(chǎn)力最大化的方式來編寫(盡可能使用最少、最簡化、最容易的方式來編寫代碼)。然而,剩下的10%,則值得投入大量關(guān)注。編寫這部分代碼需要做出精細(xì)計(jì)劃,甚至需要在代碼編寫之前進(jìn)行。為了做出正確的計(jì)劃,必須收集數(shù)據(jù)(各類操作及類庫調(diào)用究竟有多快),為此需要測試工具(Profiler)。這些是所有高性能軟件項(xiàng)目的基石,務(wù)必留心。加入真正掌握了這些內(nèi)容,寫出高性能的軟件也不會(huì)是困難的事情。

????????舉例1:一個(gè)網(wǎng)站一定有常用功能和不常用功能,這些常用功能往往只占整個(gè)網(wǎng)站功能的20%甚至更少。

? ? ? ? 舉例2:一個(gè)軟件或網(wǎng)站,讀寫請(qǐng)求頻率比一般為 80%:20%。也就是說一個(gè)網(wǎng)站,8成的資源開銷都花在數(shù)據(jù)查詢讀取上,2成開銷花費(fèi)在增刪改上。

????????二八定律告訴我們性能優(yōu)化時(shí)的重點(diǎn)應(yīng)該放在決定了80%資源開銷的這20%的功能代碼里。

實(shí)操篇:

? ? ? ? 接下來,我在此,根據(jù)木桶效應(yīng)與二八定律,分享一下我再運(yùn)維時(shí)是如何快速優(yōu)化一個(gè)網(wǎng)站的性能的。以下是我梳理的性價(jià)比從高到低的性能優(yōu)化方案。

????????第一步:壓縮文本

? ? ? ? 什么是文本壓縮?一個(gè)網(wǎng)站,文本資源占用了很大一部分,前端html、css、js文件都是文本,前后端也都是通過json文本進(jìn)行請(qǐng)求和響應(yīng)。文本壓縮,可以最大程度地減少通過網(wǎng)絡(luò)傳輸?shù)淖止?jié)數(shù),所以使用文本壓縮是一個(gè)可以短時(shí)間內(nèi)快速提升網(wǎng)絡(luò)響應(yīng)速度的方式。文本壓縮分為:

? ? ? ? 1、請(qǐng)求與響應(yīng)數(shù)據(jù)的壓縮,即:json壓縮。 【?這是我使用的響應(yīng)壓縮方法(.NET版)】

? ? ? ? 2、前端靜態(tài)文件壓縮,即:css、js壓縮

????????為什么壓縮文本是第一步?

? ? ? ? 1、代碼性能優(yōu)化工作量小。統(tǒng)一修改少量代碼就可以實(shí)現(xiàn)對(duì)網(wǎng)站中所有文本的壓縮。

? ? ? ? 2、作用面廣。一個(gè)網(wǎng)站,可能成千上萬的地方用到了文本。只要你花費(fèi)一次性精力做了文本壓縮,成千上萬的地方統(tǒng)一都會(huì)被你一次性優(yōu)化掉。

? ? ? ? 3、效果顯著。zip壓縮率高,文本壓縮一般在80%以上。(類似于txt文件壓縮成zip包的效果)

? ? ? ? 4、顯著減少服務(wù)器帶寬、網(wǎng)絡(luò)壓力,但也會(huì)消耗少量cpu進(jìn)行壓縮。

????????第二步:壓縮圖片及視頻

? ? ? ? 1、對(duì)圖片和視頻本身做壓縮

? ? ? ? ? ? ? ? 1、對(duì)前端靜態(tài)圖片及視頻進(jìn)行壓縮。直接壓縮工具壓縮即可。注意:壓縮分為質(zhì)量壓縮和尺寸壓縮。

? ? ? ? ? ? ? ? ? ? ? ? a、圖片:

????????????????????????????????? ? ? ?1、質(zhì)量壓縮:【?這是我使用的批量圖片壓縮方式】

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2、尺寸壓縮:根據(jù)業(yè)務(wù),對(duì)不同頁面的圖片進(jìn)行尺寸壓縮

? ? ? ? ? ? ? ? ? ? ? ? b、視頻:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1、質(zhì)量壓縮:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2、尺寸壓縮:對(duì)一個(gè)項(xiàng)目中所有視頻進(jìn)行壓縮

? ? ? ? ? ? ? ? 2、對(duì)后端動(dòng)態(tài)上傳的圖片及視頻進(jìn)行壓縮。

? ? ? ? ? ? ? ? ? ? ? ? a、修改上傳接口代碼,在接口內(nèi)部對(duì)用戶上傳的圖片及視頻進(jìn)行壓縮

? ? ? ? ? ? ? ? ? ? ? ? b、對(duì)用戶已經(jīng)上傳的圖片及視頻進(jìn)行壓縮。直接拿圖片or視頻壓縮工具壓縮即可。

? ? ? ? 2、圖片or視頻列表頁面,使用縮略圖(thumbnail)代替原圖或者視頻。

????????第三步:將所有后端接口的響應(yīng)時(shí)間記錄到日志中

????????第四步:數(shù)據(jù)分頁

? ? ? ? 數(shù)據(jù)分頁是很常見的性能優(yōu)化

????????第五步:前端懶加載

????????

????????第六步:使用 Javascript 庫 CDN

????????第七步: 數(shù)據(jù)庫使用索引

????????第八步:使用緩存

????????第九步:數(shù)據(jù)庫數(shù)據(jù)訪問優(yōu)化:用【select (字段1,字段2,字段3) 】代替【select *】

????????第十步:開啟定時(shí)器定期對(duì)數(shù)據(jù)庫假刪除or老舊棄用數(shù)據(jù)or業(yè)務(wù)邏輯處理過程中的中間過程數(shù)據(jù)

????????第十一步:使用負(fù)載均衡

????????第十二步:使用多線程

? ? ? ? 1、后端在邏輯上可以進(jìn)行異步響應(yīng)的接口,可以使用異步:一個(gè)接口的主線程,在某個(gè)節(jié)點(diǎn)直接開啟子線程讓子線程去處理耗時(shí)操作,而主線程不必等候子線程的執(zhí)行結(jié)果,就直接返回響應(yīng)給前端。

? ? ? ? 2、特別耗時(shí)操作可以使用多線程并發(fā)完成任務(wù),最后把子線程的處理結(jié)果合并到一起,如循環(huán)體內(nèi)、圖像處理等等。

本文持續(xù)更新中...

總結(jié)

以上是生活随笔為你收集整理的如何在短时间内快速提升网站响应速度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 四虎黄色影院 | 日韩精品视频中文字幕 | 欧美一级色片 | 亚洲乱码国产乱码精品精98午夜 | 亚洲精品乱码久久久久久按摩观 | aⅴ天堂网| 色天天| 色人天堂| 影音先锋欧美在线 | 亚州国产精品 | 免费黄色的网站 | 欧美日韩在线一区二区 | 四虎精品欧美一区二区免费 | 久草高清视频 | 伊人网在线免费观看 | 亚洲一区二区电影网 | www.亚洲黄色| 青青草狠狠操 | 精品一区二区三区免费看 | 特黄一区二区三区 | jizz国产 | 国产农村妇女aaaaa视频 | 欧美日韩一二三区 | 孕期1ⅴ1高h | 亚洲伦理网站 | 麻豆网站在线看 | 欧美成人高清视频 | 9999热视频 | www.成人在线视频 | 国产又猛又黄 | 国产精品丝袜一区 | 在线免费观看视频 | 色呦呦在线观看视频 | 在线成人国产 | hs在线观看 | 成人爱爱网站 | 好男人影视www | 超薄肉色丝袜一二三 | 日本一区二区在线不卡 | 99免费精品| 日韩不卡一区二区三区 | 爱搞国产 | 欧美拍拍视频 | 日韩欧美色 | 男人的天堂一级片 | 蜜桃臀aⅴ精品一区二区三区 | 精品国产999| 欧美在线中文 | www.婷婷 | 欧美黄色一级生活片 | 天天做日日干 | 欧美精品久久久久性色 | 99香蕉网 | 成人午夜精品福利 | 校园春色中文字幕 | 最新欧美日韩 | 麻豆精品在线观看 | 大香焦久久 | 激情伦成人综合小说 | 日本一二三区不卡 | 中文字幕在线视频观看 | 精品久久久久久久中文字幕 | 色呦呦在线免费观看 | 一级a性色生活片久久无 | 6680新视觉电影免费观看 | 国产ts人妖系列高潮 | 影音先锋黄色资源 | 国产情侣一区二区三区 | 天天爽天天色 | 日韩精品在线观看免费 | 在线观看无遮挡 | 天海翼av在线播放 | 开心激情五月婷婷 | wwwav在线| 中文字幕在线观看高清 | 日韩在线综合 | 国产情侣一区 | 成人亚洲精品久久久久软件 | 丰满人妻一区二区三区53 | 精品在线观看免费 | 欧美不卡视频在线观看 | 性福网站 | 九九视频在线免费观看 | 黄页在线观看 | 最近中文字幕免费 | 亚洲人成色777777精品音频 | 天天躁日日躁狠狠很躁 | 欧美午夜理伦三级在线观看 | 日本特级淫片 | 嫩草影院在线视频 | 成人免费视频观看 | 欧美特级一级片 | 国产盗摄在线观看 | 91蜜臀精品国产自偷在线 | 久久中文字幕在线观看 | 欧美又粗又大aaa片 老熟妇仑乱视频一区二区 亚洲妇女体内精汇编 | 精品爆乳一区二区三区 | 亚洲精品欧洲精品 | 免费看久久 |