當前位置:首頁 » 雲伺服器 » 電腦網站伺服器優化

電腦網站伺服器優化

發布時間: 2022-09-02 07:12:06

⑴ IIS網站伺服器性能應如何進行優化

1、減少HTTP請求數量
這主要是修改網站代碼,減少外部圖片、CSS、JS等文件數量,手動合並多個CSS/javaScript文件。IIS那裡不用設置。
2、使用CDN
對於小網站來說,這個就免了吧。當然有錢人可以試試,可以從技術上解決用戶訪問網站響應速度慢的問題。
3、啟用內容過期
對於靜態文件啟用內容過期可以提高訪問性能。首先網站的目錄要劃分合理,圖片、CSS、JavaScript均放在單獨目錄下,然後在IIS中選擇目錄,點屬性-HTTP頭,啟用內容過期,可以選擇30天後過去,這樣,用戶瀏覽器將比較當前日期和截止日期,以便決定是顯示緩存頁還是從伺服器請求更新的頁,由於圖片、CSS、JS通常變化較少,因此基本上都從本地緩存讀取,從而加快顯示速度。
4、啟用Gzip壓縮
HTTP壓縮是在Web伺服器和瀏覽器間傳輸壓縮文本內容的方法。HTTP壓縮採用通用的壓縮演算法如Gzip等壓縮HTML、JavaScript或 CSS文件。壓縮的最大好處就是降低了網路傳輸的數據量,從而提高客戶端瀏覽器的訪問速度。
使用方法是,右擊「網站」->「屬性」,選擇「服務」。在「HTTP壓縮」框中選中「壓縮靜態文件」,「臨時目錄」建議單獨設置另一個盤的目錄下。
之後,IIS管理器中,右擊「Web服務擴展」->「增加一個新的Web服務擴展」,在「擴展名」中輸入「HTTPCompression」,添加「要求的文件」為C:\WINDOWS\system32\inetsrv\gzip.dll,其中Windows系統目錄根據您的安裝可能有所不同,選中「設置擴展狀態為允許」。
最後,使用文本編輯器打開C:\Windows\System32\inetsrv\MetaBase.xml,在HcFileExtensions中增加需要壓縮的靜態文件後綴名,默認為HTML和TXT文件,建議再添加上js、css等,不要添加圖片或ZIP等已經被壓縮的文件。
5、將樣式文件放在頭部
這是基本的HTML代碼風格,將所有的CSS文件都放在HTML頁面的頭部。
6、將腳本文件放在尾部
這也是基本的HTML代碼風格,將所有的JavaScript文件都放在HTML頁面的尾部。
7、避免CSS表達式
這點很簡單,因為大多數人從來不用CSS表達式。
8、使用外部的JavaScript和CSS
將所有的JavaScript和CSS都做成外部文件的形式進行引用,這主要是為了讓這些文件可以被瀏覽器緩存起來,參見第三點的介紹。
9、減少DNS查詢
域名的DNS查詢會帶來額外的訪問開銷,減少頁面內文件的主機域名數量,一個頁面的主機域名保持在2-4個以內,這樣就不會降低頁面的裝入速度。
10、壓縮JavaScript文件
壓縮腳本文件,刪除不必要的字元,可以改善載入時間,目前有很多JavaScript文件的壓縮工具,我這里有一個GUI界面的JS壓縮工具供下載。
11、避免重定向
網頁的重定向會帶來額外的運行開銷,因此要避免頁面進行重定向跳轉操作。
12、刪除重復腳本
一個頁面兩次包含同一個JavaScript文件會影響載入的性能,因此需要將重復的腳本文件刪除。
13、配置ETag
這是一個令人迷惑的問題。理論上說將伺服器的ETag刪除會提高HTTP請求的性能,但是按照微軟官方提供的修改方法配置IIS 6.0,並沒有實際效果,最終我使用了一個remetag,以ISAPI的方式實現了刪除ETag的功能。

⑵ 如何優化網站伺服器減少網路延時

如果您的用戶群體在國內,建議您使用國內伺服器或使用香港伺服器,國內伺服器建議使用雙線或者多線,這樣不同地區不同線路的用戶訪問速度都會非常快(就好比聯通線路的用戶訪問電信伺服器,速度方面肯定會差一些。雙線或多線可以解決這個問題)。香港伺服器的話,建議使用CN2線路直連大陸的伺服器,這樣可以保證網路穩定性。
如果您的用戶群體分布在海外地區,那就近源租用伺服器,客戶訪問速度快,才是做網站最優先考慮的問題。
也可以搭建CDN節點,可以進一步提升客戶訪問網站的速度。
海騰數據張毅龍為您回答,希望可以幫到您。

⑶ 要怎麼優化網站伺服器才能提升網站訪問速度

網站伺服器的帶寬速度決定打開網站的速度,可以將網站上的大文件(JS/CSS,圖片,視頻)縮小到帶寬的速度,就可以提高網站訪問速度 。

⑷ 網站性能優化有哪些

一、提高伺服器並發處理能力
我們總是希望一台伺服器在單位時間內能處理的請求越多越好,這也成了web伺服器的能力高低的關鍵所在。伺服器之所以可以同時處理多個請求,在於操作系統通過多執行流體系設計,使得多個任務可以輪流使用系統資源,這些資源包括CPU、內存以及I/O等。這就需要選擇一個合適的並發策略來合理利用這些資源,從而提高伺服器的並發處理能力。這些並發策略更多的應用在apache、nginx、lighttpd等底層web server軟體中。
二、Web組件分離
這里所說的web組件是指web伺服器提供的所有基於URL訪問的資源,包括動態內容,靜態網頁,圖片,樣式表,腳本,視頻等等。這些資源在文件大小,文件數量,內容更新頻率,預計並發用戶數,是否需要腳本解釋器等方面有著很大的差異,對不同特性資源採用能充分發揮其潛力的優化策略,能極大的提高web站點的性能。例如:將圖片部署在獨立的伺服器上並為其分配獨立的新域名,對靜態網頁使用epoll模型可以在大並發數情況下吞吐率保持穩定。
三、資料庫性能優化和擴展。
Web伺服器軟體在資料庫方面做的優化主要是減少訪問資料庫的次數,具體做法就是使用各種緩存方法。也可以從資料庫本身入手提高其查詢性能,這涉及到資料庫性能優化方面的知識本文不作討論。另外也可以通過主從復制,讀寫分離,使用反向代理,寫操作分離等方式來擴展資料庫規模,提升資料庫服務能力。
四、Web負載均衡及相關技術
負載均衡是web站點規模水平擴展的一種手段,實現負載均衡的方法有好幾種包括基於HTTP重定向的負載均衡,DNS負載均衡,反向代理負載均衡,四層負載均衡等等。
對這些負載均衡方法做簡單的介紹:基於HTTP重定向的負載均衡利用了HTTP重定向的請求轉移和自動跳轉功能來實現負載均衡,我們熟悉的鏡像下載就使用這種負載均衡。DNS負載均衡是指在一個DNS伺服器中為同一個主機名配置多個IP地址,在應答DNS查詢時返回不同的解析結果將客戶端的訪問引到不同的機器上,使得不同的客戶端訪問不同的伺服器,從而達到負載均衡的目的。反向代理負載均衡也叫七層負載均衡,這是因為反向代理伺服器工作在TCP七層結構的第七層(應用層),它通過檢查流經的HTTP報頭,根據報頭內的信息來執行負載均衡任務。四層負載均衡是基於NAT技術的負載均衡,它將一個Internet上合法注冊的IP地址映射為多個內部伺服器的IP地址,對每次TCP連接請求動態使用其中一個內部IP地址,達到負載均衡的目的。此外,還有工作在數據鏈路層(第二層)的直接路由方式下的負載均衡,它通過修改數據包目標MAC地址來實現。以及,基於IP隧道的負載均衡,在這種方式下可以將實際伺服器根據需要部署在不同的地域,並根據就近訪問的原則來轉移請求,CDN服務便是基於IP隧道技術來實現的。
Web負載均衡在擴展web伺服器規模的同時也給web站點性能優化提供了一個更大更復雜也更靈活自由的平台,基於該平台性能優化的策略包括共享文件系統,內容分發與同步,分布式文件系統,分布式計算,分布式緩存等等。
五、web緩存技術
web緩存技術被認為是減輕伺服器負載、降低網路擁塞、增強萬維網可擴展性的有效途徑,其基本思想是利用客戶訪問的時間局部性(Temporal Locality)原理,將客戶訪問過的內容在Cache中存放一個副本,當該內容下次被訪問時,不必連接到駐留網站或重新計算生成,而是由Cache中保留的副本提供。Web緩存可以帶來如下的好處:
(1) 減少網路流量,從而減輕網路擁塞;這是因為緩存避免了一部分HTTP請求。
(2) 降低客戶訪問延遲,其主要原因有:①已緩存的內容,客戶可以緩存獲取而不是從伺服器獲取或重新計算生成,從而減小了傳輸延遲縮短了響應時間;②沒有被緩存的內容由於網路擁塞及伺服器負載的減輕而可以較快地被客戶獲取;
(3) 由於客戶的部分或者全部請求內容可以從通過緩存獲取,從而減輕了遠程伺服器負載。
(4) 如果由於伺服器故障或網路故障造成伺服器無法響應客戶請求,客戶可以從緩存中獲取緩存的內容副本,使得web站點服務的魯棒性(Robustness)得到了加強。
可以看出web緩存能給web站點帶可觀的性能提升。其實在用戶發出請求到一幅完整的網頁呈現在用戶面前這一過程中緩存無處不在,下面是web性能優化時常用的緩存技術,你會發現緩存被廣泛應用在各個環節。
瀏覽器緩存:瀏覽器一般會在用戶文件系統中創建一個目錄,用於存放緩存文件,並給每個緩存文件打上必要的標記,比如過期時間等。這些標記主要用於瀏覽器和伺服器之間的緩存協商。
Web伺服器緩存:一個URL在一段較長時間內對應一個唯一的響應內容,比如靜態內容或者更新不太頻繁的動態內容,web伺服器可將響應內容緩存起來,下次web伺服器便可以在收到請求後立即拿出事先緩存好的響應內容並返回給瀏覽器。
代理伺服器緩存:暴露在互聯網中與後端的web伺服器通過內部網路相連的前端伺服器稱為反向代理伺服器,建立在反向代理伺服器上的緩存稱為反向代理緩存。暴露在互聯網中與後端的web客戶端通過內部網路相連的前端伺服器稱為正向代理伺服器,建立在正向代理伺服器上的緩存稱為正向代理緩存。代理伺服器緩存位於客戶端和web伺服器之間,可以將它看做二者之間的一個中繼站。它的存在可以改善客戶端的訪問速度、提升web server的服務能力、安全性等等。
總共分析總結了五種技術,主要希望能夠對web server性能優化這塊提供一個整體的認識。後續會專門就web緩存技術發表一些自己的看法。

⑸ 1.16.5伺服器優化技術有哪些

伺服器優化技術主要有分布式緩存、非同步操作、使用集群以及代碼。
網站性能優化第一定律:優先考慮使用緩存優化性能。
緩存原理
(1)什麼是緩存?(將數據存儲在相對較高訪問速度的介質中,以供系統處理)
(2)緩存的優點:訪問速度快,如果需要計算可以減少計算時間
(3)緩存的本質是一張以鍵值對存儲的內存hash表
(4)主要用來存儲:讀寫比例高,很少變化的數據
(5)網站的訪問遵循28定律
合理使用緩存應該注意以下問題
(1)頻繁更新的數據(數據還沒有讀就已經失效,一般要求讀寫比在2:1以上才有意義)
(2)沒有熱點數據(無疑浪費資源)
(3)數據不一致與臟讀(緩存被載入的過程中可能會產生數據不一致,有效時間過程數據在內存中就會變成臟數據)
(4)緩存的可用性(如果太過依賴緩存,容易產生雪崩。使用緩存熱備並不能提高緩存的可用性,使用集群可以提高可用性)
(5)緩存預熱(LRU計算時間過長,有的數據需要提前載入)
(6)緩存穿透(解決部分數據無法命中,而加重資料庫壓力的問題,一般設置空值)分布式緩存架構
(1)JBoss Cache:數據相同
(2)Memcached:數據不同互不通信
(3)Memcached5大優點:協議簡單、通用性強(支持各種語言)、Libevent網路通信、內存管理高效、互不通信。

⑹ Web伺服器性能和站點訪問性能該如何優化

今天小編要跟大家分享的文章是關於Web伺服器性能和站點訪問性能該如何優化?正在從web前端工作的小夥伴們來和小編一起看一看吧!

一、優化思路淺析


要優化Web伺服器的性能,我們先來看看Web伺服器在web頁面處理上的步驟:


1、Web瀏覽器向一個特定的伺服器發出Web頁面請求;


2、Web伺服器接收到web頁面請求後,尋找所請求的web頁面,並將所請求的Web頁面傳送給Web瀏覽器;


3、Web瀏覽器接收到所請求的web頁面內容,並將它顯示出來。


上面三個步驟都關系Web伺服器,但實際Web伺服器性能相關最大的是在第2步,這里Web伺服器需要尋找來自瀏覽器所請求的Web
頁面內容。


我們知道,Web頁面內容有靜態的,也有動態的,靜態的內容,web
伺服器可以直接將結果發回給瀏覽器,對於動態內容,則通常需要交給應用伺服器先處理,由應用伺服器返回結果。


當然,也有Web伺服器本身可以處理動態內容的,例如IIS就可以自已解釋處理ASP,ASP.NET這兩種微軟的動態網頁腳本語言。


從上面簡要的分析里,我們大致可以得到這樣的結論,影響Web頁面訪問的影響因素會有這幾個:


1、Web伺服器從磁碟中讀取靜態頁面內容的速度,也即時間;


2、Web伺服器判定請求內容是靜態還是動態內容的時間;


3、Web伺服器轉發請求給應用伺服器的時間;


4、應用伺服器處理(解釋)動態內容所需的時間;


5、Web伺服器返回Web內容給瀏覽器的響應時間;


6、Web伺服器接收來自瀏覽器請求的處理性能;


7、Web訪問請求數據在網路上傳輸的時間:包括從瀏覽器到伺服器,和從伺服器到瀏覽器兩部分;


8、瀏覽器本地計算和渲染Web內容的時間,即接收內容後展現內容的時間。


上面8項很容易理解,也很直接,其實還有以下幾項也是關乎Web
頁面訪問速度體驗的因素,你可以思考下是否如此?或者說是否會影響到頁面訪問性能。


§Web伺服器執行安全策略檢查的時間,或者說性能;


§Web伺服器讀取日誌文件、寫日誌內容、關閉對日誌文件訪問的時間,先讀後寫再關閉,這三步中的讀與寫又涉及到磁碟訪問性能因素;


§同時與Web伺服器連接會話的客戶端數量大小,即並發訪問量多大。


我們可以將上面的影響因素抽像出來,那麼就是:


1、Web伺服器磁碟性能;


2、Web伺服器與應用伺服器交互的性能;


3、應用伺服器處理動態內容的性能,或者說動態內容應用處理性能;


4、客戶端與Web伺服器的連接速度,即網路傳輸性能;


5、Web瀏覽器解釋和渲染Web內容的性能;


6、Web訪問並發性能。


反映到我們進行性能優化,可以入手的角度就有:


1、增加帶寬,包括伺服器和客戶端兩邊的Internet連接帶寬;


2、加快動態內容的處理性能;


3、盡可能多地使用靜態內容,這樣Web伺服器就可以無需請求應用伺服器,直接將Web內容發給瀏覽器端,這里可以入手的方案又有:


動態內容緩存


動態內容靜態化


多台伺服器負載均衡同時處理大量的並發訪問;


提升伺服器磁碟訪問性能,也即通常所說的I/O性能;


減少網頁中的HTTP請求數;


更換更好性能的Web伺服器;


合理部署伺服器,在離客戶端更近的地方部署伺服器,已經證明可以明顯地提升訪問性能。


二、性能優化實踐


經過前面小節的簡要分析,相信你對優化Web伺服器有一定的思路了,你可以從硬體層面、軟體層面、Web代碼三個層面去優化。


下面我們結合一個具體的實例來實踐一回,本文所舉例是一個小型的Web
站點,部分數據系假設,如有類同,純屬巧合,僅起拋磚引玉之用。在實際工作中,如果碰到大站點,你可以參考此處的分析,修改優化方案。


1.站點簡介


一個社區論壇站點,採用Discuz!論壇程序構建,該程序採用主流的php+Mysql組成。


網站目前有近5萬注冊用戶,絕大多數是國內的用戶,活躍用戶數在一半左右,每天平均PV在15~20萬,獨立訪問IP數在8000
左右。


2.Web伺服器性能優化需求


網站現部署在國外的伺服器,租用虛擬主機來運營,因為訪問量比較大,所以經常會收到虛擬主機服務商的流量很大的通知,要求控制下訪問量。


另外,虛擬主機的伺服器在美國,沒有在國內租用虛擬主機的原因是國內網站在備案方面非常繁瑣,在網站一開始運營時數據量和訪問量都比較小,所以對性能要求不高,數據量小,所以伺服器在查詢處理數據時速度比較快,也讓人感覺訪問速度不慢,現在隨著數據量和訪問量的不斷上升,訪問速度已明顯下降,到了需要改善訪問性能的時候了。


基於目前該社區網站的情況,提出的優化需求是,國內訪問速度需要提升一倍,目前首頁載入時間需要40秒左右,希望優化後能在20
秒以內將首頁載入完成。


另外提出網站數據能夠每天自動備份一次,備份數據保留一個月的,以便隨時恢復。


上述兩點需求,其中第一條才是性能優化需求,第二條是額外的需求了。


3.性能優化方案


根據其網站的現狀和優化需求,結合自己的經驗,加上谷歌的搜索,同時與網站主不斷確認溝通,最終得到以下性能優化方案:


由虛擬主機部署改為獨立伺服器部署


虛擬主機受限比較多,無法自己自定義配置Web伺服器,無法配置PHP
動態緩存,而且獨立伺服器可以獨享內存、處理器資源,不再受虛擬主機商對每個虛擬主機用戶的內存和處理器資源佔用限制。處理器資源和內存資源,對接受更多並發訪問有直接性能提升效果。


獨立伺服器,我們選用Linode2048型號,2G內存,4核處理器(Linode所有VPS都是四核處理器),80G硬碟空間,800G
網路流量。


由Windows操作系統改為Linux操作系統


網站使用的是PHP+MySQL程序,PHP在Windows下的性能,受限於IIS需要通過ISAPI形式調用PHP,所以性能不如
Linux下Apache直接通過PHP模塊解釋PHP,更不如Nginx與PHP-FPM
的性能,既然使用了獨立伺服器,操作系統也可以自己確定,Linux系統我們選用了熟悉的UbuntuLinuxServer10.04(一年前還沒有
12.04),^-^。


Web伺服器採用Nginx,而不使用Apache


選用Nginx而不用Apache的原因非常直接和乾脆,因為站點里有很多靜態的附件文件,在處理靜態內容上,Nginx性能是Apache
的差不多10倍。


在PHP解釋和偽靜態規則方面,Apache要比Nginx強,但這不影響我們放棄它,為緩解這一點,我們在後面對PHP
進行了動態緩存。


對PHP查詢進行動態緩存,使用eAccelerator這個加速器


PHP加速器是一個為了提高PHP執行效率,從而緩存起PHP的操作碼,這樣PHP後面執行就不用解析轉換了,可以直接調用PHP
操作碼,這樣速度上就提高了不少。


eAccelerator是一個開源PHP加速器,優化和動態內容緩存,提高了PHP腳本的緩存性能,使得PHP
腳本在編譯的狀態下,對伺服器的開銷幾乎完全消除。它還有對腳本起優化作用,以加快其執行效率。使得的PHP程序代碼執效率能提高1-10
倍,這個加速還是非常明顯的。


具體地,我們計劃對eAccelerator進行以下設置優化:


§緩存使用物理內存來進行,不使用磁碟來緩存。我們知道內存的讀寫性能是硬碟的N倍,所以在內存資源可以安排情況下,強烈建議使用內存來保存
eAccelerator的緩存內容。


§緩存大小設置為32MB,這個值是操作系統默認支持最大的緩存容量。雖然可以通過修改配置文件來加大這個值,但我們覺得沒有必要,所以就放棄了。


Nginx性能優化


選用了Nginx,雖然它的性能很好,但我們仍然需要對它進行性能優化,在這個案例中,我們做了以下優化:


§使用8個進程,每個進程大約需要20M內存消耗,這里一共使用了150M左右的內存。


§充分使用主伺服器的CPU內核:四核,使用CPU粘性配置選項(worker_cpu_affinity),每核處理器分配兩個進程。


§開啟gzip壓縮功能:gzip壓縮對JS,CSS,XML壓縮效果非常好,能壓縮一半,即減少一倍的傳輸時間;對圖片文件,JPG
已經壓縮過的,它的壓縮性能要少一些。


§圖片本地緩存1天:網站上的圖片很多,通常一張圖片上傳後,不會頻繁的修改,只會頻繁的訪問,所以將圖片放在Nginx
緩存里,可以減少伺服器訪問載入次數,提升訪問速度。


§JS、CSS文件本地緩存7
天:這兩種網頁文件,平時都不會去修改它,將它緩存起來,可以減少載入次數,提升訪問速度。為什麼這兩種文件不和圖片一起設置緩存有效期,是考慮了不同文件的修改頻率不一樣。


§Nginx日誌每天切割一次:這個優化項能大大減小Nginx日誌文件的大小,經過一周的查看,每天的日誌文件是50M
左右,如果不是每天切割,用月切割,那一個月的日誌文件就是幾個G,要Web
伺服器在內存里載入這么大的文件,系統本身內存不夠用,就自然會用到磁碟來緩存,這就影響性能。每天50M左右,在內存上完全可以順利載入,這樣Nginx
在處理訪問時,可以快速的保存訪問日誌。


經過上述幾個優化項目,Nginx這邊一共需要佔用200M左右內存資源。


對PHPCGI進程性能進行優化


Nginx沒有PHP模塊,所以它對PHP的支持是通過PHP-FPM來實現的,PHP-FPM
是跑進程來處理並發請求,在這個案例中,我們配置了20個進程,每個進程差不多佔用20M左右內存資源,一共是400M左右。


同時,PHP-FPM與Nginx交互機制,選用LinuxSocket模式而不是TCP協議埠,Socks是系統級處理模式,socks
也就是一個文件連接,而TCP協議埠,需要經過網路協議處理,性能不如前者,所以我們選擇了前者。


MySQL資料庫性能優化


因為網站主程序是選用他人開發的開源程序,所以對資料庫查詢的程序優化我們無法處理,只能從MySQL本身尋找突破口。


我們可以想像一下,對於論壇網站,通常看貼、查貼的訪問量要遠大於創建貼子、回復貼子的訪問量,體現在MySQL
資料庫上,就是讀表與查詢表數據的連接處理更多。


因此我們要選擇對讀表、查詢性能更好的存儲引擎,結合以前了解的知識,MySQL預設的MyISAM
引擎就是被設計為適合處理讀頻率遠大於寫頻率的環境,查詢效率相當可觀,而且內存佔用很少,這也與我們租用低內存配置的VPS相符。


具體到MySQL配置參數的優化上,受限於伺服器上內存資源本身有限,就直接採用預設的中型環境配置文件。


內容分發網路應用


站點每天十多萬的訪問,上萬獨立IP
訪問,查看先前的訪問統計,訪問來自國內各個地區,使用多種網路連接訪問進來,為保證來自各網路的用戶訪問速度,同時也減少對網站伺服器的請求,我們採用了CDN
來分發靜態內容,這樣各地的用戶可以就近訪問到已緩存在CDN上的文件,CDN
服務商會在靜態內容第一次訪問時緩存到他們全國各地的伺服器上,當第二次訪問時,用戶實際是沒有連接到網站伺服器上獲取文件的,而是直接從CDN
伺服器上獲取,可以明顯的提升網站性能。


以上就是小編今天為大家分享的關於Web伺服器性能和站點訪問性能該如何優化的文章,希望本篇文章能夠對正在從事web前端工作的小夥伴們有所幫助。想要了解更多web前端相關知識記得關注北大青鳥web培訓官網。最後祝願小夥伴們工作順利!


⑺ 如何優化網站伺服器提升網站訪問速度

要點一:盡可能的減少HTTP請求數

從客戶訪問網站頁面到整個頁面內容完全展現出來,這其中要花費較多的時間來下載各種Scripts、CSS樣式表、Flash以及圖片,而每一類下
載都相當於一次HTTP請求,這樣的請求越多網站被完全載入出來所花的時間會越長,意味著客戶端的訪問會很慢,那麼此時就需要盡可能的減少HTTP請求
數,通常我們可以直接把css和js寫入到頁面中,避免了外部的調用;或者我們可以把CSS文件和JS文件分來,在後台再進行合並,這樣客戶端瀏覽器相當
於一次請求。總而言之,減少HTTP請求數我們可以通過減少外部各類文件的數量調用次數來達到其目的。

要點二:降低DNS查詢時間

眾所周知網路伺服器端的域名和IP地址是相互對應的,當客戶端發出請求時,計算機還需要通過域名和IP地址的相互轉換來判斷,而這個轉換工作便是域
名解析DNS,通常DNS的查詢需要10~20毫秒時間,客戶端瀏覽器也只會等待DNS查詢結束之後才會載入此域名下的內容。因此,我們要加快頁面的訪問
速度,就可以從降低DNS查詢時間方面去做改善。

要點三:啟用伺服器Gzip壓縮功能

對於大中型網站來說,頁面的內容多且比較多樣化,單個頁面的大小可能是幾百K以上了,客戶端訪問的時候下載會比較慢,此時我們可以採用伺服器
Gzip頁面壓縮功能,可以將一個大小為100K的頁面文件壓縮成25K以下,這樣就可以減少網路傳輸的數量從而提高客戶端訪問速度。一般伺服器都是可以
使用Gzip壓縮功能的,並且能夠針對JS文件、CSS文件和Html進行壓縮,多方面去進行優化網站訪問速度。

要點四:推薦大中型網站使用CDN加速工具
CDN加速是目前大型網站普遍使用的頁面加速方式,它對於網站優化幾乎沒有影響的,基本原理是將網站鏡像備份到很多伺服器節點上,使伺服器節點周圍
的用戶訪問速度更快,從而提升客戶端高速訪問網站的體驗;但是並不是所有的網站都適合使用CDN加速,一般對於小規模站點個人站的話,就不需要使用CDN
加速,畢竟從長期來看這可是一筆不小的開支;建議圖片站以及多媒體站點可使用CDN加速。

⑻ 如何進行網站性能優化

一、前端優化

網站性能優化是一個很綜合的話題,涉及到伺服器的配置和網站前後端程序等各個方面,我只是從實際經歷出發,分享一下自己所嘗試過的網站性能優化方法。之所以在標題上掛一個web2.0,是因為本文更偏重於中小網站的性能優化,我所使用的系統也是典型web2.0的LAMP架構。

首先講講前端的優化,用戶訪問網頁的等待時間,有80%是發生在瀏覽器前端,特別是頁面和頁面中各種元素(圖片、CSS、Javascript、 flash…)的下載之上。因此在很多情況下,相對於把大量的時間花在艱苦而繁雜的程序改進上,前端的優化往往能起到事半功倍的作用。雅虎最近將內部使用的性能測試工具yslow向第三方公開,並發布了著名的網站性能優化的十三條規則,建議你下載並安裝yslow,並作為測評網站優化效果的工具。下面我挑其中特別有價值的具體說明一下優化的方法:

對於第一次訪問您網站,尚未在瀏覽器cache中緩存您網站內容的用戶,我們可以做的事情包括:

1)減少一個頁面訪問所產生的http連接次數
對於第一次訪問你網站的用戶,頁面所產生的http連接次數是影響性能的一個關鍵瓶頸。

對策:
- 盡量簡潔的頁面設計,最大程度減少圖片的使用,通過放棄一些不必要的頁面特效來減少javascript的使用。
- 使用一些優化技巧,比如利用圖片的背景位移減少圖片的個數;image map技術;使用Inline images將css圖片捆綁到網頁中。
- 盡量合並js和css文件,減少獨立文件個數。

2) 使用gzip壓縮網頁內容
使用gzip來壓縮網頁中的靜態內容,能夠顯著減少用戶訪問網頁時的等待時間(據說可達到60%)。主流的web伺服器都支持或提供gzip壓縮,如果使用apache伺服器,只需要在配置文件中開啟 mod_gzip(apache1.x)或mod_deflate(apache2.x)即可。凡是靜態的頁面,使用gzip壓縮都能夠顯著提高伺服器效率並減少帶寬支出,注意圖片內容本身已經是壓縮格式了,務必不要再進行壓縮。

3)將CSS放在頁面頂端,JS文件放在頁面底端
CSS的引用要放在html的頭部header中,JS文件引用盡量放在頁面底端標簽的後面,主要的思路是讓核心的頁面內容盡早顯示出來。不過要注意,一些大量使用js的頁面,可能有一些js文件放在底端會引起一些難以預料的問題,根據實際情況適當運用即可。

4)使JS文件內容最小化
具體來說就是使用一些javascript壓縮工具對js腳本進行壓縮,去除其中的空白字元、注釋,最小化變數名等。在使用gzip壓縮的基礎上,對js內容的壓縮能夠將性能再提高5%。

5)盡量減少外部腳本的使用,減少DNS查詢時間
不要在網頁中引用太多的外部腳本,首先,一次dns的解析過程會消耗20-120毫秒的時間;其次,如果在頁面中引用太多的外部文件(如各種廣告、聯盟等代碼),可能會因為外部文件的響應速度而將你的網站拖得很慢。如果不得不用,那麼就盡量將這些腳本放在頁腳吧。不過有一點需要提及,就是瀏覽器一般只能並行處理同一域名下的兩個請求,而對於不同子的域名則不受此限制,因此適當將本站靜態內容(css,js)放在其他的子域名下(如 static.xxx.com)會有利於提高瀏覽器並行下載網頁內容的能力。

對於您網站的經常性訪問用戶,主要的優化思路就是最大限度利用用戶瀏覽器的cache來減少伺服器的開銷。

1)在header中添加過期時間(Expires Header)
在header中給靜態內容添加一個較長的過期時間,這樣可以使用戶今後訪問只讀取緩存中的文件,而不會與伺服器產生任何的交互。不過這樣做也存在一些問題,當圖片、CSS和js文件更新時,用戶如果不刷新瀏覽器,就無法獲得此更新。這樣,我們在對圖片、css和js文件修改時,必須要進行重命名,才能保證用戶訪問到最新的內容。這可能會給開發造成不小的麻煩,因為這些文件可能被站點中的許多文件所引用。flickr提出的解決辦法是通過url rewrite使不同版本號的URL事實上指向同一個文件,這是一個聰明的辦法,因為url級別的操作效率是很高的,可以給開發過程提供不少便利。

要理解為什麼這樣做,必須要了解瀏覽器訪問url時的工作機制:
a. 第一次訪問url時,用戶從伺服器段獲取頁面內容,並把相關的文件(images,css,js…)放在高速緩存中,也會把文件頭中的expired time,last modified, ETags等相關信息也一同保留下來。
b. 用戶重復訪問url時,瀏覽器首先看高速緩存中是否有本站同名的文件,如果有,則檢查文件的過期時間;如果尚未過期,則直接從緩存中讀取文件,不再訪問伺服器。
c. 如果緩存中文件的過期時間不存在或已超出,則瀏覽器會訪問伺服器獲取文件的頭信息,檢查last modifed和ETags等信息,如果發現本地緩存中的文件在上次訪問後沒被修改,則使用本地緩存中的文件;如果修改過,則從伺服器上獲取最新版本。

我的經驗,如果可能,盡量遵循此原則給靜態文件添加過期時間,這樣可以大幅度減少用戶對伺服器資源的重復訪問。

2)將css和js文件放在獨立外部文件中引用
將css和js文件放在獨立文件中,這樣它們會被單獨緩存起來,在訪問其他頁面時可以從瀏覽器的高速緩存中直接讀取。一些網站的首頁可能是例外的,這些首頁的自身瀏覽可能並不大,但卻是用戶訪問網站的第一印象以及導向到其他頁面的起點,也可能這些頁面本身使用了大量的ajax局部刷新及技術,這時可以將 css和js文件直接寫在頁面中。

3)去掉重復的腳本
在IE中,包含重復的js腳本會導致瀏覽器的緩存不被使用,仔細檢查一下你的程序,去掉重復引用的腳本應該不是一件很難的事情。

4)避免重定向的發生
除了在header中人為的重定向之外,網頁重定向常在不經意間發生,被重定向的內容將不會使用瀏覽器的緩存。比如用戶在訪問,伺服器會通過301轉向到/,在後面加了一個「/」。如果伺服器的配置不好,這也會給伺服器帶來額外的負擔。通過配置apache的 alias或使用mod_rewrite模塊等方法,可以避免不必要的重定向。

還有一些,比如使用CDN分發機制、避免CSS表達式等、避免使用ETags等,因為不太常用,這里就不再贅述了。

做完了上述的優化,可以試著用yslow測試一下網頁的性能評分,一般都可以達到70分以上了。

當然,除了瀏覽器前端和靜態內容的優化之外,還有針對程序腳本、伺服器、資料庫、負載的優化,這些更深層次的優化方法對技術有更高的要求。本文的後半部分將重點探討後端的優化。

二、後端優化

上次寫完web2.0網站前端優化篇之後,一直想寫寫後端優化的方法,今天終於有時間將思路整理了出來。

前端優化可以避免我們造成無謂的伺服器和帶寬資源浪費,但隨著網站訪問量的增加,僅靠前端優化已經不能解決所有問題了,後端軟體處理並行請求的能力、程序運 行的效率、硬體性能以及系統的可擴展性,將成為影響網站性能和穩定的關鍵瓶頸所在。優化系統和程序的性能可以從以下的方面來入手:

1)apache、mysql等軟體的配置的優化
盡管apache和mysql等軟體在安裝後使用的默認設置足以使你的網站運行起來,但是通過調整mysql和apache的一些系統參數,還是可以追求更高的效率和穩定性。這個領域中有很多專業的文章和論壇(比如: ),要想掌握也需要進行深入的研究和實踐,這里就不重點討論了。

2)應用程序環境加速
這里僅以我最常應用的php開發環境為例,有一些工具軟體可以通過優化PHP運行環境來達到提速的目的,其基本原理大致是將PHP代碼預編譯並緩存起來,而不需要改變任何代碼,所以比較簡單,可以將php的運行效率提升50%以上。比較常用的php加速工具有:APC( http: //pecl.php.net/package-info.php?package=APC)、Turck MMCache( )、php accelebrator(),還有收費的Zend Performance Suite

3)將靜態內容和動態內容分開處理
apache是一個功能完善但比較龐大的web server,它的資源佔用基本上和同時運行的進程數呈正比,對伺服器內存的消耗比較大,處理並行任務的效率也一般。在一些情況下,我們可以用比較輕量級的web server來host靜態的圖片、樣式表和javascript文件,這樣可以大大提升靜態文件的處理速度,還可以減少對內存佔用。我使用的web server是來自俄羅斯的nginx,其他選擇方案還包括lighttpd和thttpd等。

4)基於反向代理的前端訪問負載均衡
當一台前端伺服器不足以應付用戶訪問時,通過前端機實現web訪問的負載均衡是最快速可行的方案。通過apache的mod_proxy可以實現基於反向代理的負載均衡,這里推薦使用nginx做代理伺服器,處理速度較apache更快一些。

5)應用緩存技術提高資料庫效能,文件緩存和分布式緩存
資料庫訪問處理並發訪問的能力是很多網站應用的關鍵瓶頸,在想到使用主從結構和多farm的方式構建伺服器集群之前,首先應該確保充分使用了資料庫查詢的緩存。一些資料庫類型(如mysql的innoDB)自身內置對緩存的支持,此外,還可以利用程序方法將常用的查詢通過文件或內存緩存起來。比如通過 php中的ob_start和文件讀寫函數可以很方便的實現文件形式的緩存,而如果你擁有多台伺服器,可以通過memcache技術通過分布式共享內存來對資料庫查詢進行緩存,不僅效率高而且擴展性好,memcache技術在livejournal和Craigslist.org等知名網站應用中都得到了檢驗。

6)伺服器運行狀態的檢測,找到影響性能的瓶頸所在
系統優化沒有一勞永逸的方法,需要通過檢測伺服器的運行狀態來及時發現影響性能的瓶頸,以及可能存在的潛在問題,因為網站的性能,永遠取決於木桶中的短板。可以編寫一些腳本來檢測web服務的運行,也有一些開源的軟體也提供了很好的功能

7)良好的擴展架構是穩定和性能的基礎
一些技巧和竅門可以幫你度過眼前的難關,但要想使網站具備應付大規模訪問的能力,則需要從系統架構上進行徹底的規劃,好在很多前人無私的把他們架構
網站的經驗分享給我們,使我們可以少走甚多彎路。我最近讀到的兩篇有啟發的文章:
- 從LiveJournal後台發展看大規模網站性能優化方法
- Myspace的六次重構

最後不得不提到程序編碼和資料庫結構對性能的影響,一系列糟糕的循環語句,一個不合理的查詢語句、一張設計不佳的數據表或索引表,都足以會使應用程序運行的速度成倍的降低。培養全局思考的能力,養成良好的編程習慣,並對資料庫運行機制有所了解,是提高編程質量的基礎。

⑼ 伺服器對網站優化效果有何影響

主機速度


主機速度除了會影響網站體驗和轉化率,也會嚴重影響網站的收錄。對一個網站來說,在搜索引擎眼中都有固定的權重,搜索引擎會分配一個與權重匹配的相對固定爬行總時間。網站權重越高,分配的總爬行時間越長。如果網站速度比較慢,搜索引擎抓取一個頁面就需要更長的時間,能爬行的頁面數量就會減少,這樣就會造成總收錄頁面數的減少。


伺服器的安全性


伺服器的安全性是網站優化效果的基本保障,一個安全性差的伺服器將會對網站優化產生不可逆轉的打擊。一個經常被木馬病毒以及黑客攻擊的伺服器是不合格的,它不能保證伺服器上的網站正常運行。


URL重寫支持


現在的網站絕大部分使用CMS系統,資料庫驅動,所以將動態URL重寫為靜態是網站優化必不可少的工作。URL重寫需要主機支持。有一部分站長對虛擬主機有誤解,認為虛擬主機不支持URL重寫。


IP及整個伺服器的懲罰


一個IP地址或者整個伺服器被搜索引擎懲罰是很少見的情況,除非這個IP地址上的大部分網站都因為作弊被懲罰,沒有作弊的網站被牽連受累。


伺服器上所放的網站數量


如果一個伺服器上放了百個網站,一旦其中一個網站因出現嚴重的作弊行為而被懲罰,那麼同一個IP網站有可能被牽連。


關於伺服器對網站優化效果有何影響,環球青藤小編今天就暫時和您分享到這里了。如若您對互聯網營銷有濃厚的興趣,希望這篇文章能夠對你的工作或學習有所幫助。如果您還想了解更多關於文案優化、廣告營銷文案寫作的方法及素材等內容,可以點擊本站的其他文章進行學習。

⑽ 什麼是網站優化

網站優化服務是指針對中/大型網站的特殊情況,以提高網站整體運營效果、提高用戶體驗、提高網站訪問量、提高網站訪問速度、提高網站整體安全性、提高網站泛關鍵詞在搜索引擎的排名結果 等為目的,為中/大型網站量身定做的優化方案。

網站優化服務的適用對象:

擁有大信息量、產品量的中/大型電子商務網站、垂直類網站、門戶類網站等。

網站優化服務的一般性原理:

通過對網站結構及網站代碼的優化,提高網頁權重,增強用戶體驗。整體提高網站在搜索引擎中的網頁收錄量和所收錄內容中包含的泛關鍵詞搜索命中率,進而達到流量提升的最終目的。

熱點內容
db2新建資料庫 發布:2024-09-08 08:10:19 瀏覽:170
頻率計源碼 發布:2024-09-08 07:40:26 瀏覽:778
奧迪a6哪個配置帶後排加熱 發布:2024-09-08 07:06:32 瀏覽:100
linux修改apache埠 發布:2024-09-08 07:05:49 瀏覽:208
有多少個不同的密碼子 發布:2024-09-08 07:00:46 瀏覽:566
linux搭建mysql伺服器配置 發布:2024-09-08 06:50:02 瀏覽:995
加上www不能訪問 發布:2024-09-08 06:39:52 瀏覽:811
銀行支付密碼器怎麼用 發布:2024-09-08 06:39:52 瀏覽:513
蘋果手機清理瀏覽器緩存怎麼清理緩存 發布:2024-09-08 06:31:32 瀏覽:554
雲伺服器的優點與缺點 發布:2024-09-08 06:30:34 瀏覽:734