高性能的架構(gòu)是以用戶為中心,供給快速的網(wǎng)頁拜訪體會,主要參數(shù)有較短的呼應(yīng)時刻、較大的并發(fā)處理才能、較高的吞吐量與安穩(wěn)的性能參數(shù)??煞譃榍岸藘?yōu)化、瀏覽器優(yōu)化、應(yīng)用層優(yōu)化、代碼層優(yōu)化與存儲層優(yōu)化。
前端優(yōu)化:網(wǎng)站事務(wù)邏輯之前的部分。瀏覽器優(yōu)化:削減 HTTP 請求數(shù),運用瀏覽器緩存,啟用緊縮,CSS JS 方位,JS 異步,削減 Cookie 傳輸;CDN 加快,反向署理。應(yīng)用層優(yōu)化:處理網(wǎng)站事務(wù)的服務(wù)器。運用緩存,異步,集群。
代碼優(yōu)化:合理的架構(gòu),多線程,資源復(fù)用(目標池,線程池等),杰出的數(shù)據(jù)結(jié)構(gòu),JVM調(diào)優(yōu),單例,Cache 等。存儲優(yōu)化:緩存、固態(tài)硬盤、光纖傳輸、優(yōu)化讀寫、磁盤冗余、分布式存儲(HDFS)、NoSQL 等。
大型分布式網(wǎng)站建設(shè)的架構(gòu)形式:分層:一般可分為運用層、服務(wù)層、數(shù)據(jù)層、管理層與剖析層。切割:一般依照事務(wù)/模塊/功用特色進行區(qū)分,比方運用層分為主頁、用戶中心。分布式:將運用分隔布置(比方多臺物理機),經(jīng)過長途調(diào)用協(xié)同作業(yè)。
集群:一個運用/模塊/功用布置多份(如:多臺物理機),經(jīng)過負載均衡一起供給對外拜訪。緩存:將數(shù)據(jù)放在間隔運用或用戶最近的方位,加速拜訪速度。異步:將同步的操作異步化。
客戶端宣布懇求,不等候服務(wù)端呼應(yīng),等服務(wù)端處理完畢后,運用告訴或輪詢的方法奉告懇求方。一般指:懇求--呼應(yīng)--告訴形式。冗余:添加副本,進步可用性、安全性與功能。安全:對已知問題有有用的解決方案,對不知道/潛在問題樹立發(fā)現(xiàn)和防御機制。
自動化:將重復(fù)的、不需要人工參加的工作,經(jīng)過東西的方法,運用機器完結(jié)。敏捷性:活躍承受需求改變,快速呼應(yīng)事務(wù)開展需求。