靜態HTML
眾所周知,純靜態消耗較少。HTML頁面,所以我們讓網站上的頁面使用靜態頁面。
圖像服務器分離
眾所周知,對web服務器,無論是Apache、IIS圖像或其他容器消耗資源。因此,有必要將圖像與頁面分開。這是大型網站將采用的策略。它們都有獨立的甚至多個圖像服務器。系統結構可以減輕服務器系統提供頁面訪問請求的壓力,確保系統不會因圖像問題而崩潰。
不同的配置可以優化應用服務器和鏡像服務器。例如,在配置內容類型時,Apache提供盡可能少的加載模塊,以確保更高的系統消耗和執行效率。
數據庫集,數據庫表哈希
大型網站有復雜的應用程序,必須使用數據庫,所以面對大量的訪問,數據庫的瓶頸很快就會出現,數據庫很快就不能滿足應用程序,所以需要使用數據庫集群或數據庫表哈希。
許多數據庫在數據庫集群中都有自己的解決方案。Oracle和Sybase有很好的解決方案。MySQL常用的提供master/slave也是類似的解決方案。您可以參考相應的解決方案來實現您使用的數據庫類型。Emsp;Emsp;數據庫集群在架構、成本和可擴展性方面受到數據庫類型的限制。因此,我們需要從應用的角度考慮系統架構的改進。哈希是一種常見有效的解決方案。
我們在應用程序中安裝業務、應用程序或功能模塊,并將數據庫分開。不同的模塊對應于不同的數據庫或表。然后,根據某些策略,對頁面或函數(如用戶表)進行較小的數據庫哈希ID哈希可以在低成本和良好擴展性的前提下提高系統的性能。
搜狐論壇采用這種架構,將論壇的用戶、設置、帖子等信息與數據庫分離,然后根據車牌號和ID在配置文件中簡單配置帖子和用戶的數據庫和表格,使系統能夠增加低成本的數據庫來補充系統的性能。
緩存
緩存技術在許多地方都有應用.net站架構和緩存在網站開發中也很重要。讓我們討論兩種基本的緩存類型。
熟悉架構Apache人們可以知道Apache提供自己的緩存模塊,也可以使用額外的緩存模塊squid緩存模塊。這兩種方法可以有效改進Apache訪問響應能力。
網站程序開發,Linux上提供的memorycache它是一個通用的緩存接口,可用于web開發。例如,使用Java可調用于開發memorycache緩存和共享一些數據。一些大型社區使用這種結構。另外,在使用中web在語言開發中,各種語言基本上都有自己的緩存模塊和方法。PHP有pear緩存模塊,而Java則更多。Net不太熟悉。我想一定是的。
鏡像
圖像是提高大型網站性能和數據安全性的一種方法。圖像技術可以解決不同網絡接入者和區域帶來的用戶訪問速度差異。例如,Chinanet和EduNet的差異促使許多網站在教育網中建立鏡像站點,并定期或實時更新數據。在圖像技術的細節上,這里并不太深,有許多專業的現成解決方案架構和產品可供選擇。軟件可以實現一些廉價的想法,比如Linux上的Rsync。
負載平衡
負荷平衡將是大型網站解決高負荷訪問和大量并發請求的高等解決方案。
隨著多年負荷平衡技術的發展,有許多專業的服務提供商和產品可供選擇。我親自接觸過一些解決方案,有兩種結構可供參考。
硬件層4交換
第四層根據應用間隔識別業務流,并將整個間隔的業務流分配給適當的應用服務器進行處理。
第四層是物理交換功能,就像虛擬交換功能一樣。其傳輸服務受各種協議的約束,包括HTTP、FTP、NFS、telnet或其他協議。這些服務需要基于物理服務器的復雜負載平衡算法。在IP**業務類型由終端組成TCP或UDP端口地址決定,而第四層交換中的應用范圍則由源和終端IP地址、TCP和UDP端口決定。在硬件四層交換產品領域,有一些著名的產品可供選擇,如Alteon、F5等。這些產品很貴,但值這個價。它們能提供靈活的管理能力。雅虎中國有近2000臺服務器,只有三四臺Alteon使用服務器。
軟件層4交換
在了解了硬件四層交換機的原理后,基于OSI該模型的軟件四層交換機應運而生。解決方案的原理是一致的,但性能稍差。然而,很容易滿足一定的壓力。有人說軟件的實現方法實際上是靈活的,處理能力取決于您熟悉的配置能力。
我們可以用Linux上常用的LVS解決軟件四層交換問題。LVS是Linux基于虛擬服務器。heartbeat實時災難響應解決方案提高了系統的強度,并提供了靈活的虛擬VIP對于分布式系統來說,配置和管理功能可以同時滿足各種應用需求。
一種典型的負載換的基礎上構建典型的負載均衡策略squid集群。這個想法被包括搜索引擎在內的許多大型網站所采用。該系統結構具有成本低、性能高、可擴展性強的特點。很容易在系統結構中隨時添加或刪除節點。