1.硬件升級
普通的P4服務(wù)器一般最多能支持每天10萬獨立IP,如果訪問量比這個還要大, 那么必須首先配置一臺更高性能的專用服務(wù)器才能解決問題 ,否則怎么優(yōu)化都不可能徹底解決性能問題。
2.負載均衡
它是根據(jù)某種負載策略把請求分發(fā)到集群中的每一臺服務(wù)器上,讓整個服務(wù)器群來處理網(wǎng)站的請求。
公司比較有錢的,可以購買專門負責負載均衡的硬件(如:F5),效果肯定會很好。對于大部分公司,會選擇廉價有效的方法擴展整個系統(tǒng)的架構(gòu),來增加服務(wù)器的吞吐量和處理能力,以及承載能力。
3.服務(wù)器集群
服務(wù)器集群就是指將N臺服務(wù)器集中起來一起進行同一種服務(wù),它們之間通過網(wǎng)絡(luò)實現(xiàn)通信。讓N臺服務(wù)器之間相互協(xié)作,共同承載一個網(wǎng)站的請求壓力。
在客戶端看來就像是只有一個服務(wù)器。集群可以利用多個計算機進行并行計算從而獲得很高的計算速度,也可以用多個計算機做備份,從而使得任何一個機器壞了整個系統(tǒng)還是能正常運行。
4.數(shù)據(jù)庫讀寫分離
基本的原理是讓主數(shù)據(jù)庫處理事務(wù)性增、改、刪操作(INSERT、UPDATE、DELETE),而從數(shù)據(jù)庫處理SELECT查詢操作。
5.數(shù)據(jù)庫分表技術(shù)(垂直分割,水平分割)
當一張的數(shù)據(jù)達到幾百萬時,你查詢一次所花的時間會變多,如果有聯(lián)合查詢的話,很有可能會死在那兒了。分表的目的就在于此,減小數(shù)據(jù)庫的負擔,縮短查詢時間。
6.表建立相應(yīng)的索引
使用索引可快速訪問數(shù)據(jù)庫表中的特定信息。
7.頁面靜態(tài)化
前臺實現(xiàn)完全的靜態(tài)化最好,可以完全不用訪問數(shù)據(jù)庫。
8.緩存技術(shù)(MemCache、Redis)
緩存技術(shù)就是另一個解決方案,就是將動態(tài)數(shù)據(jù)存儲到緩存文件中,動態(tài)網(wǎng)頁直接調(diào)用 這些文件,而不必再訪問數(shù)據(jù)庫
9.禁止外部盜鏈
外部網(wǎng)站的圖片或者文件盜鏈往往會帶來大量的負載壓力,因此應(yīng)該嚴格限制外部對于自身的圖片或者文件盜鏈
10.控制大文件的下載
大文件的下載會占用很大的流量,并且對于非SCSI硬盤來說,大量文件下載會消耗 CPU,使得網(wǎng)站響應(yīng)能力下降。因此,盡量不要提供超過2M的大文件下載,如果需要提供,建議將大文件放在另外一臺服務(wù)器上。