《大型网站技术架构:核心原理与案例分析》-- 读书笔记 (2) : 大型网站核心架构要素(1) -- 性能...
1. 性能
??? 在瀏覽器端,可能通過瀏覽器緩存、使用頁面壓縮、合理布局頁面、減少cookie傳輸?shù)仁侄胃纳菩阅堋_€可以使用CDN,將網(wǎng)站靜態(tài)內(nèi)容分發(fā)至離用戶最近的網(wǎng)絡(luò)服務(wù)商機(jī)房。可以在網(wǎng)站機(jī)房部署反向代理服務(wù)器,緩存熱點文件,加快請求響應(yīng)速度。
??? 在應(yīng)用服務(wù)器端,可以使用服務(wù)器本地緩存和分布式緩存。也可以通過異步操作將用戶請求發(fā)送至消息隊列等待后續(xù)任務(wù)處理,而當(dāng)前請求直接返回給用戶。
??? 將多臺應(yīng)用服務(wù)器組成一個集群共同對外服務(wù)。
??? 在代碼層面,可以通過使用多線程,改善內(nèi)存管理等手段優(yōu)化性能。
??? 1.1 性能測試指標(biāo): 響應(yīng)時間、 并發(fā)數(shù)、 吞吐量、 性能計數(shù)器
??? 1.2 性能測試方法:
????????? 1.2.1 性能測試: 以系統(tǒng)設(shè)計初期規(guī)劃的性能指標(biāo)為預(yù)期目標(biāo),對系統(tǒng)不斷施加壓力,難系統(tǒng)在資源可接受范圍內(nèi)是否能達(dá)到性能預(yù)期
????????? 1.2.2 負(fù)載測試: 對系統(tǒng)不斷地增加并發(fā)請求以增加系統(tǒng)壓力,直到系統(tǒng)的某項或多項性能指標(biāo)達(dá)到安全臨界值。如某種資源已經(jīng)呈飽和狀態(tài),這時繼續(xù)對系統(tǒng)施加壓力,系統(tǒng)的處理能力不但不能提高,反而會下降。
????????? 1.2.3 壓力測試: 超過安全負(fù)載的情況下,對系統(tǒng)繼續(xù)施加壓力,直到系統(tǒng)崩潰或不能再處理任何請求,以此獲得系統(tǒng)最大壓力承受能力。
????????? 1.2.4 穩(wěn)定性測試: 在特定硬件、軟件、網(wǎng)絡(luò)環(huán)境條件下,給系統(tǒng)加載一定業(yè)務(wù)壓力,使系統(tǒng)運行一段較長時間,以此檢測系統(tǒng)是否穩(wěn)定。
??? 1.3 性能優(yōu)化
??????? 1.3.1 前端性能優(yōu)化:
??????????? 1.3.1.1 減少HTTP請求: 合并CSS,合并JS,合并圖片
??????????? 1.3.1.2 使用瀏覽器緩存: 對于CSS,JS,LOGO及一些更新頻率都比較低的表態(tài)資源文件,可通過設(shè)置HTTP頭中Cache-Control和Expired的屬性,緩存在瀏覽器中
??????????? 1.3.1.3 啟用壓縮: 壓縮對服務(wù)端和瀏覽器都會產(chǎn)生一定的壓力,需權(quán)衡考慮
??????????? 1.3.1.4 CSS放在頁面最上面,JS放在頁面最下面
??????????? 1.3.1.5 減少Cookie傳輸,考慮靜態(tài)資源使用獨立域名
??????? 1.3.2 CDN加速
??????? 1.3.3 反向代理
??????? 1.3.4 應(yīng)用服務(wù)器性能優(yōu)化
??????????? 1.3.4.1 分布式緩存: Memcached
??????????? 1.2.4.2 異步操作: 任何可以晚點做的事情都應(yīng)該晚點再做
??????????? 1.3.4.3 使用集群
??????????? 1.3.4.4 代碼優(yōu)化: 多線程、資源復(fù)用(數(shù)據(jù)庫連接、復(fù)雜對象等)、數(shù)據(jù)結(jié)構(gòu)、垃圾回收
??????? 1.3.5 存儲性能優(yōu)化
??????????? 1.3.5.1 固態(tài)硬盤 vs 機(jī)械硬盤
??????????? 1.3.5.2 B+樹 vs LSM 樹
??????????? 1.3.5.3 RAID vs HDFS
?????????
?
轉(zhuǎn)載于:https://www.cnblogs.com/langfanyun/p/6749525.html
總結(jié)
以上是生活随笔為你收集整理的《大型网站技术架构:核心原理与案例分析》-- 读书笔记 (2) : 大型网站核心架构要素(1) -- 性能...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Ajax——php基础知识(二)
- 下一篇: 网络专家预测未来互联网发展十大趋势