導航:首頁 > 配伺服器 > 如何提高web伺服器

如何提高web伺服器

發布時間:2022-09-06 23:48:45

『壹』 Linux下的Web伺服器。如何提高安全,防止為了保證安全性,受到攻擊

但由於該操作系統是一個多用戶操作系統,黑客們為了在攻擊中隱藏自己,往往會選擇 Linux作為首先攻擊的對象。那麼,作為一名Linux用戶,我們該如何通過合理的方法來防範Linux的安全呢?下面筆者搜集和整理了一些防範 Linux安全的幾則措施,現在把它們貢獻出來,懇請各位網友能不斷補充和完善。 1、禁止使用Ping命令Ping命令是計算機之間進行相互檢測線路完好的一個應用程序,計算機間交流數據的傳輸沒有 經過任何的加密處理,因此我們在用ping命令來檢測某一個伺服器時,可能在網際網路上存在某個非法分子,通過專門的黑客程序把在網路線路上傳輸的信息中途 竊取,並利用偷盜過來的信息對指定的伺服器或者系統進行攻擊,為此我們有必要在Linux系統中禁止使用Linux命令。在Linux里,如果要想使 ping沒反應也就是用來忽略icmp包,因此我們可以在Linux的命令行中輸入如下命令: echo 1 > /proc/sys/net/ipv4/icmp_echo_igore_all 如果想恢復使用ping命令,就可以輸入 echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all2、注意對系統及時備份為了防止系統在使用的過程中發生以外情況而難以正常運行,我們應該對Linux完好的系統進 行備份,最好是在一完成Linux系統的安裝任務後就對整個系統進行備份,以後可以根據這個備份來驗證系統的完整性,這樣就可以發現系統文件是否被非法修 改過。如果發生系統文件已經被破壞的情況,也可以使用系統備份來恢復到正常的狀態。備份信息時,我們可以把完好的系統信息備份在CD-ROM光碟上,以後 可以定期將系統與光碟內容進行比較以驗證系統的完整性是否遭到破壞。如果對安全級別的要求特別高,那麼可以將光碟設置為可啟動的並且將驗證工作作為系統啟 動過程的一部分。這樣只要可以通過光碟啟動,就說明系統尚未被破壞過。 3、改進登錄伺服器將系統的登錄伺服器移到一個單獨的機器中會增加系統的安全級別,使用一個更安全的登錄伺服器 來取代Linux自身的登錄工具也可以進一步提高安全。在大的Linux網路中,最好使用一個單獨的登錄伺服器用於syslog服務。它必須是一個能夠滿 足所有系統登錄需求並且擁有足夠的磁碟空間的伺服器系統,在這個系統上應該沒有其它的服務運行。更安全的登錄伺服器會大大削弱入侵者透過登錄系統竄改日誌 文件的能力。 4、取消Root命令歷史記錄在Linux下,系統會自動記錄用戶輸入過的命令,而root用戶發出的命令往往具有敏感的 信息,為了保證安全性,一般應該不記錄或者少記錄root的命令歷史記錄。為了設置系統不記錄每個人執行過的命令,我們可以在Linux的命令行下,首先 用cd命令進入到/etc命令,然後用編輯命令來打開該目錄下面的profile文件,並在其中輸入如下內容: HISTFILESIZE=0

『貳』 單台web伺服器如何盡可能的提高網站性能

1.使用瀏覽器緩存,設置HTTP頭中Cache-Control和Expires屬性,緩存時間可以是幾天或者幾個月。
2.減少http請求,合並CSS,合並JavaScript,合並圖片,將瀏覽器一次訪問需要的JavaScript,CSS合並成一個文件。
3.啟用壓縮,在伺服器端開啟GZIP壓縮功能,可有效較少通信傳輸的數據量,文本文件的壓縮效率科大80%以上。

4.CSS放在頁面上面,JavaScript放在頁面最下面。
5.全站生成靜態HTML頁面。
5.1、網站訪問更快更穩定,極大的降低資料庫資源的消耗,減輕伺服器的負擔。
5.2、安全,理論上一個全站靜態的網站,是沒有任何漏洞可攻擊的。
5.3、更容易被搜索引擎搜索到。
6.減少Cookie傳輸,盡量減少Cookie中傳輸的數據量和傳輸的次數。
7.CDN加速,將網站緩存在CDN可極大提高網頁的打開速度。
8.網站源碼優化,這個內容比較多。
想到的也就這些了~

『叄』 如何提升web伺服器的運行速度

1) DNS Lookup,DNS解析時間。如果頁面存在多個請求主機,頻繁DNS解析將消耗更多的時間。
2) Connecting,建立一個TCP連接所需要的時間,不同的瀏覽器使用不同的埠下載資源,因此更多的埠等於更多的並行性,並且更多的TCP連接時間開銷。
3) Blocking,網頁請求被阻塞,花費在瀏覽器中的等待網路連接的時間;
4) Sending,向伺服器發送請求所需要的時間;
5) Waiting,等待伺服器響應的時間(直到第一個位元組是從伺服器收到的),優化服務或連接;
6) Receiving,接收伺服器響應對象需要的時間;
【TS,DM】

『肆』 web伺服器優化的方法

在對Web伺服器進行優化時要根據真實的Web應用系統的情況和特徵來採取有針對性地優化方案。
1.根據不同的網路特性來看:
1.1區域網
在區域網中,降低M T U (最大傳輸單位)值對可以避免復制數據和要求校驗,而通過優化select系統調用或在Socket事件處理器中執行計算可以優化請求並發管理,利用HTTP1.1持續連接等都可以使系統性能得到相應的改善但在廣域網的環境下卻沒有什麼大的作用,有的甚至恰恰相反。
1.2廣域網
在廣域網中,終端用戶的請求的等待時間依賴於與網路延遲的程度,連接帶寬限制情況。對於廣域網,軟硬中斷在網路處理中佔有很大的分量,所以採用適應的中斷處理機制將會給伺服器的響應能力帶來很大的好處;將伺服器定位在內核和將基於進程設計改為基於事務處理也可以不同程度的提高伺服器的性能。
2.關於Web負載
除了對Web負載的特徵進行分析以便在評測時更好地再現真實負載之外,還要考慮Web伺服器所在的網路環境下負載的情況。人們不僅要求伺服器滿足正常的工作負載要求,而且在高峰時期依然要保持較高的吞吐量。但是,伺服器在高負載的情況下的性能表現往往低於人們的期望。
伺服器過載的情況分為兩種:
2.1瞬間過載
伺服器暫時的、短時間的超載,這種情況主要是由伺服器負載的特點引起的。大量的研究表明,Web請求的網路通信量分布是自相似的,即Web請求的通信量可以在很大范圍內有顯著的變化。這就造成伺服器常常短時間的超載,但這樣情況持續的時間一般很短
2.2伺服器長時間的超載
這種情況一般是由某一特殊事件引起的,例如伺服器受到拒絕服務攻擊或者發生了「活鎖」現象

第一種伺服器超載情況是不可避免的,但第二種情況則可以通過對伺服器改進來改善。拋開惡意的攻擊不算,仔細分析伺服器處理信息包的過程可以發現,造成系統在超載情況下性能下降的根本原因是高優先順序處理階段對CPU的不公平搶占。
因此,如果限制高優先順序處理階段對CPU的佔用率,或者限制處理高優先順序的CPU個數,都可以減輕或者消除收包活鎖現象。
具體的可以採用以下的方法:
2.2.1採用輪詢機制
為了減少中斷對系統性能的影響,在負載正常的情況下採用「下半處理」 的方法就非常有效,而在高負荷情況下,採用這個方法仍然會造成活鎖現象,這時可以採用輪詢機制。雖然這個方法在負載正常的情況下會造成資源的浪費和響應速度降低,但在網路數據頻繁到達伺服器時就要比中斷驅動技術有效的多。
2.2.2減少上下文切換
這種方法不管伺服器在什麼情況下對性能改善都很有效,這時可以採用引入核心級(kerne1—leve1)或硬體級數據流的方法來達到這個目的。核心級數據流是將數據從源通過系統匯流排進行轉發而不需要使數據經過應用程序進程,這個過程中因為數據在內存中,因此需要CPU操作數據。
硬體級數據流則是將數據從源通過私有數據匯流排或是雖等DMA通過系統匯流排進行轉發而不需要使數據經過應用程序進程,這個過程不需要CPU操作數據。這樣在數據傳輸過程中不需要用戶線程的介入,減少了數據被拷貝的次數,減少了上下文切換的開銷。
2.2.3減低中斷的頻率(主要是針對高負荷情況的方法)
這里主要有兩種方法:批中斷和暫時關閉中斷。批中斷可以在超載時有效的抑制活鎖現象,但對伺服器的性能沒有什麼根本性的改進;當系統出現接收活鎖跡象時,可以採用暫時關閉中斷的方法來緩和系統的負擔,當系統緩存再次可用時可以再打開中斷,但這種方法在接收緩存不夠大的情況下會造成數據包丟失。
四.Web伺服器優化總結
Web伺服器性能是整個Web系統的關鍵環節,提高Web伺服器的性能也是長久以來人們一直關注的課題。這里通過對Web伺服器的工作原理和現有的優化方法和技術的分析,得出了對待Web伺服器性能的提高也應該具體問題具體分析,要在具體的應用環境中,根據其特點來採取相應的優化措施。

『伍』 如何提高webserver並發能力

1、HTML靜態化
其實大家都知道,效率最高、消耗最小的就是純靜態化的 html頁面,所以我們盡可能使我們的網站上的頁面採用靜態頁面來實現, 這個最簡單的方法其實也是最有效的方法。但是對於大量內容並且頻繁更新的網站,我們無法全部手動去挨個實現,於是出現了我們常見的信息發布系統CMS,像 我們常訪問的各個門戶站點的新聞頻道,甚至他們的其他頻道,都是通過信息發布系統來管理和實現的,信息發布系統可以實現最簡單的信息錄入自動生成靜態頁 面,還能具備頻道管理、許可權管理、自動抓取等功能,對於一個大型網站來說,擁有一套高效、可管理的CMS是必不可少的。

除了門戶和信息發布類型的網站,對於交互性要求很高的社區類型網站來說,盡可能的靜態化也是提高性能的必要手段,將社區內的帖子、文章進行實時的靜態化,有更新的時候再重新靜態化也是大量使用的策略,像Mop的大雜燴就是使用了這樣的策略,網易社區等也是如此。

同 時,html靜態化也是某些緩存策略使用的手段,對於系統中頻繁使用資料庫查詢但是內容更新很小的應用,可以考慮使用html靜態化來實現,比如論壇中論 壇的公用設置信息,這些信息目前的主流論壇都可以進行後台管理並且存儲再資料庫中,這些信息其實大量被前台程序調用,但是更新頻率很小,可以考慮將這部分 內容進行後台更新的時候進行靜態化,這樣避免了大量的資料庫訪問請求。

2、圖片伺服器分離
大家知道,對於Web伺服器來說,不 管 是 Apache、IIS還是其他容器,圖片是最消耗資源的,於是我們有必要將圖片與頁面進行分離,這是基本上大型網站都會採用的策略,他們都有獨立的圖片服 務器,甚至很多台圖片伺服器。這樣的架構可以降低提供頁面訪問請求的伺服器系統壓力,並且可以保證系統不會因為圖片問題而崩潰,在應用伺服器和圖片伺服器 上,可以進行不同的配置優化,比如apache在配置ContentType的時候可以盡量少支持,盡可能少的LoadMole,保證更高的系統消耗 和執行效率。

3、資料庫集群和庫表散列
大型網站都有復雜的應用,這些應用必須使用資料庫,那麼在面對大量訪問的時候,資料庫的瓶頸很快就能顯現出來,這時一台資料庫將很快無法滿足應用,於是我們需要使用資料庫集群或者庫表散列。

在資料庫集群方面,很多資料庫都有自己的解決方案,Oracle、Sybase等都有很好的方案,常用的MySQL提供的Master/Slave也是類似的方案,您使用了什麼樣的DB,就參考相應的解決方案來實施即可。

上 面提到的資料庫集群由於在架構、成本、擴張性方面都會受到所採用DB類型的限制,於是我們需要從應用程序的角度來考慮改善系統架構,庫表散列是常用並且最 有效的解決方案。我們在應用程序中安裝業務和應用或者功能模塊將資料庫進行分離,不同的模塊對應不同的資料庫或者表,再按照一定的策略對某個頁面或者功能 進行更小的資料庫散列,比如用戶表,按照用戶ID進行表散列,這樣就能夠低成本的提升系統的性能並且有很好的擴展性。sohu的論壇就是採用了這樣的架 構,將論壇的用戶、設置、帖子等信息進行資料庫分離,然後對帖子、用戶按照板塊和ID進行散列資料庫和表,最終可以在配置文件中進行簡單的配置便能讓系統 隨時增加一台低成本的資料庫進來補充系統性能。

4、緩存
緩存一詞搞技術的都接觸過,很多地方用到緩存。網站架構和網站開發中的緩存也是非常重要。這里先講述最基本的兩種緩存。高級和分布式的緩存在後面講述。
架構方面的緩存,對Apache比較熟悉的人都能知道Apache提供了自己的緩存模塊,也可以使用外加的Squid模塊進行緩存,這兩種方式均可以有效的提高Apache的訪問響應能力。
網 站程序開發方面的緩存,Linux上提供的Memory Cache是常用的緩存介面,可以在web開發中使用,比如用Java開發的時候就可以調用MemoryCache對一些數據進行緩存和通訊共享,一些大 型社區使用了這樣的架構。另外,在使用web語言開發的時候,各種語言基本都有自己的緩存模塊和方法,PHP有Pear的Cache模塊,Java就更多 了,.net不是很熟悉,相信也肯定有。

5、鏡像
鏡像是大型網站常採用的提高性能和數據安全性的方式,鏡像的技術可以解決不同 網 絡接入商和地域帶來的用戶訪問速度差異,比如ChinaNet和ENet之間的差異就促使了很多網站在教育網內搭建鏡像站點,數據進行定時更新或者實 時更新。在鏡像的細節技術方面,這里不闡述太深,有很多專業的現成的解決架構和產品可選。也有廉價的通過軟體實現的思路,比如Linux上的rsync等 工具。

6、負載均衡
負載均衡將是大型網站解決高負荷訪問和大量並發請求採用的終極解決辦法。
負載均衡技術發展了多年,有很多專業的服務提供商和產品可以選擇,我個人接觸過一些解決方法,其中有兩個架構可以給大家做參考。
硬體四層交換
第 四層交換使用第三層和第四層信息包的報頭信息,根據應用區間識別業務流,將整個區間段的業務流分配到合適的應用伺服器進行處理。第四層交換功能就象是虛 IP,指向物理伺服器。它傳輸的業務服從的協議多種多樣,有HTTP、FTP、NFS、Telnet或其他協議。這些業務在物理伺服器基礎上,需要復雜的 載量平衡演算法。在IP世界,業務類型由終端TCP或UDP埠地址來決定,在第四層交換中的應用區間則由源端和終端IP地址、TCP和UDP埠共同決 定。
在硬體四層交換產品領域,有一些知名的產品可以選擇,比如Alteon、F5等,這些產品很昂貴,但是物有所值,能夠提供非常優秀的性能和很靈活的管理能力。Yahoo中國當初接近2000台伺服器使用了三四台Alteon就搞定了。

軟體四層交換
大家知道了硬體四層交換機的原理後,基於OSI模型來實現的軟體四層交換也就應運而生,這樣的解決方案實現的原理一致,不過性能稍差。但是滿足一定量的壓力還是游刃有餘的,有人說軟體實現方式其實更靈活,處理能力完全看你配置的熟悉能力。
軟 件四層交換我們可以使用Linux上常用的LVS來解決,LVS就是Linux Virtual Server,他提供了基於心跳線heartbeat的實時災難應對解決方案,提高系統的魯棒性,同時可供了靈活的虛擬VIP配置和管理功能,可以同時滿 足多種應用需求,這對於分布式的系統來說必不可少。

一個典型的使用負載均衡的策略就是,在軟體或者硬體四層交換的基礎上搭建squid集群,這種思路在很多大型網站包括搜索引擎上被採用,這樣的架構低成本、高性能還有很強的擴張性,隨時往架構裡面增減節點都非常容易。

『陸』 如何在Web上提高系統安全性和穩定性

伺服器是網路環境中為客戶機提供各種服務的、特殊的計算機系統,在網路中具有非常重要的地位,伺服器安全性顯得尤為重要。Web伺服器安全漏洞
Web伺服器上的漏洞可以從以下幾方面考慮:
a.在Web伺服器上你不讓人訪問的秘密文件、目錄或重要數據。
b.從遠程用戶向伺服器發送信息時。特別是信用卡之類東西時,中途遭不法分子非法攔截。
c.Web伺服器本身存在一些漏洞,使得一些人能侵入到主機系統,破壞一些重要的數據,甚至造成系統癱瘓。
d.CGI安全方面的漏洞有:
(1)有意或無意在主機系統中遺漏Bugs給非法黑客創造條件。
(2)用CGI腳本編寫的程序當涉及到遠程用戶從瀏覽器中輸入表格(Form),並進行檢索(Search
index),或form-mail之類在主機上直接操作命令時,或許會給Web主機系統造成危險。提高系統安全性和穩定性
a.限制在Web伺服器開賬戶,定期刪除一些斷進程的用戶。
b.對在Web伺服器上開的賬戶,在口令長度及定期更改方面作出要求,防止被盜用。
c.盡量使FTP、MAIL等伺服器與之分開,去掉ftp,sendmail,tftp,NIS,NFS,finger,netstat等一些無關的應用。
d.在Web伺服器上去掉一些絕對不用的如SHELL之類的解釋器,即當在你的CGI的程序中沒用到PERL時。就盡量把PERL在系統解釋器中刪除掉。
e.定期查看伺服器中的日誌logs文件。分析一切可疑事件。

『柒』 Web伺服器會提示不安全,怎麼提高安全性呢

  1. 基於伺服器系統的安全設置

  2. 防火牆設置

  3. 賬戶設置

  4. 加強程序代碼安全性

  5. 及時備份數據

  6. 加強程序代碼的安全性

『捌』 如何優化web伺服器的訪問速度

網站運營的任何時期,網站訪問速度都是至關重要的部分,它是網站友好體驗中最基本的一項,如果訪問體驗都令人不滿意,那麼後期所做的營銷推廣模式都有可能徒勞無功,因為網路中客戶的選擇成本很低,加上普遍客戶的耐心都不高,頁面訪問超過6秒客戶就會選擇離開,這對於一些流量本來就不高的企業網站來說無疑是雪上加霜。

一、升級正在使用中的伺服器

進行伺服器升級工作之前,要考慮多方面的問題,是升級已有的伺服器還是購置新的伺服器設備須根據實際情況抉擇。首先來說升級現有的伺服器設備,一般來說網站運營到後期隨著業務不斷增加,多平台應用的開發對於伺服器性能的要求也逐步提升,長而久之伺服器遇到性能瓶頸也是情理之中的事情,對於這種情況,我們可以通過升級伺服器(例如增加硬體設備或網路帶寬)等相關配置來滿足不斷擴大的業務需求,那麼伺服器性能瓶頸問題就可以得到解決。

二、優化正在使用的伺服器

不管是完成升級後的伺服器,還是新購置的伺服器,我們都要對其進行優化,從而提升伺服器的性能以及利用率。如何優化伺服器?作為在國互網工作到現在的資深IDC工作人員,小編認為大概分為以下四個方面

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

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

要點二:降低DNS查詢時間

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

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

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

要點四:推薦大中型網站使用CDN加速工具

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

希望以上知識能夠幫到您

『玖』 如何提高Web伺服器性能

在各種網站的正常運營中,由於用戶需求的多樣性,直接導致了主機應用的復雜性,如,Client/Server模式、Web/Server模式、三層應用服務系統迅速普及,伺服器作為網路信息發布、處理的關鍵性節點,比以往要承載更多的流量負載。也許伺服器的性能表現會不盡如人意,這就需要分析具體的伺服器性能瓶頸並找到解決辦法。本文對影響Web伺服器性能的各方面做了分析,提出了緩解Web伺服器性能瓶頸效應的方法。

資料庫的互連性

目前,互聯網上最大的資源殺手當非在線資料庫(online databases)和電子商務(e-commerce)等應用莫屬。提供web功能的資料庫和應用伺服器近年來飛速增長,顯示出強勁的發展勢頭。從性能的角度來看,在線資料庫,基於MySQL、Oracle、SQL Server或Sybase等的應用如日中升,迫使我們更加關注伺服器的性能狀況。對於大型網站來說,高負載的HTTP傳輸和資料庫處理事務互相搶占資源,並最終可能導致伺服器在極短的時間內崩潰或者變得慢如蝸牛。在這種情況下,建議使用專門的後台運行的資料庫伺服器(當然也是出於安全的考慮)以及前台處理的HTTP伺服器。

網路帶寬

可用的帶寬對於主要由靜態頁面構成的站點來說,是最關鍵的因素。撇開網路的吞吐總量以及響應速度不講,在高負載的環境下,系統的突發傳輸速率是非常重要的。在用戶訪問的高峰期,某些站點也許根本無法訪問。這樣的站點在用戶企圖訪問它時顯得慢如蝸牛,而伺服器自身卻仍舊非常空閑。這樣看來,要成功搭建一個web主機,選擇合適的帶寬顯然是非常重要的。必要時,伺服器到核心交換機可選擇千兆帶寬。

內存

可用的物理內存是另外一個重要因素,這是因為對內存的佔用率會直接隨著對伺服器請求數量的增加而增加。文件緩沖區也是非常重要的,因為它能將磁碟的使用頻率降到最低程度,明顯加快事務處理的總體速度。對內存的需求很大程度上取決於使用在特定伺服器上的軟體的具體情況。除了操作系統的管理能力和文件系統的緩沖區大小之外,還需要將所選擇的web伺服器軟體對硬體的特殊要求調查清楚。

處理器

對於那些主要由靜態頁面構成的站點來說,CPU是最次要的一個因素。但是,在使用了包括CGI、伺服器解析文檔或提供web訪問方式的資料庫的情況下,就需要更多地關注CPU的性能。在這種場合下,如果向一個較小的用戶群體提供某種對CPU依賴很大的應用服務,那麼,一個高速的單CPU可能是最有用的。但是,如果存在多個用戶同時對大批量的頁面提出訪問請求,那麼在這種情況下(尤其在這些頁面均以獨立的進程或線程模式打開情況下),多CPU系統(即使這些CPU的速度都很慢)更為管用。

以上簡單分析了各類平台下的伺服器性能瓶頸,並提出了緩解的基本途徑和方法。當然,緩解伺服器性能瓶頸的方法還有採用伺服器集群、負載平衡技術等。

『拾』 應用解析:如何改善調優Web伺服器性能

Web伺服器在web頁面處理中大致可分為三個步驟:第一步,web瀏覽器向一個特定的伺服器發出Web頁面請求;第二步,Web伺服器接收到web頁面請求後,尋找所請求的web頁面,並將所請求的Web頁面傳送給Web瀏覽器;第三步,Web伺服器接收到所請求的web頁面,並將它顯示出來。
影響web應用伺服器性能的因素
Web伺服器的性能就是指一個Web伺服器響應用戶請求的能力,伺服器的性能對於一個Web系統來說至關重要。為了提高Web伺服器的性能人們進行了許多嘗試,也採用了許多技術和方法,但是這些技術和方法往往缺乏適用性。
通過對前人的研究分析可以發現,在web伺服器的優化方而存在這種問題的原因主要有兩個:一方面是伺服器性能評測造成的,一方面是選用優化方案時考慮不全面造成的。
因此在具體的應用環境下優化Web伺服器的性能需要另外考慮以下兩個主要因素:網路特性和Web負載特點。
網路特性是指web伺服器所在網路情況,是廣域網還是區域網,是高速網路(傳輸速率在1OOMb/s以上的網路就叫做高速網路)還是低速網路,在不同的網路中相關的傳輸數據的類型、網路相應時間、吞吐量,利用率等網路特性不盡相同,所以要加以區分,具體情況具體分析。
而在Web負載特點方面,由於在對Web伺服器進行評測時,一個非常關鍵的因素就是Web負載的選擇。評測工具雖然有多種,但是它們都在選擇負載上做足了功課。關於Web負載特點的研究主要目的就在於對Web伺服器性能進行評測時,可以根據這些特點,選擇模擬最真實的Web負載的評測工具以便獲得最貼近事實的Web伺服器性能評測數據,以便更好的對其進行分析和得出優化方案。
因此,如果限制高優先順序處理階段對CPU的佔用率,或者限制處理高優先順序的CPU個數,都可以減輕或者消除收包活鎖現象。具體的可以採用以下的方法:
一、採用輪詢機制。為了減少中斷對系統性能的影響,在負載正常的情況下採用「下半處理」 的方法就非常有效,而在高負荷情況下,採用這個方法仍然會造成活鎖現象,這時可以採用輪詢機制。雖然這個方法在負載正常的情況下會造成資源的浪費和響應速度降低,但在網路數據頻繁到達伺服器時就要比中斷驅動技術有效的多。
二、減少上下文切換。這種方法不管伺服器在什麼情況下對性能改善都很有效,這時可以採用引入核心級(kerne1—leve1)或硬體級數據流的方法來達到這個目的。核心級數據流是將數據從源通過系統匯流排進行轉發而不需要使數據經過應用程序進程,這個過程中因為數據在內存中,因此需要CPU操作數據。
硬體級數據流則是將數據從源通過私有數據匯流排或是雖等DMA通過系統匯流排進行轉發而不需要使數據經過應用程序進程,這個過程不需要CPU操作數據。這樣在數據傳輸過程中不需要用戶線程的介入,減少了數據被拷貝的次數,減少了上下文切換的開銷。
三、減低中斷的頻率(主要是針對高負荷情況的方法)。這里主要有兩種方法:批中斷和暫時關閉中斷。批中斷可以在超載時有效的抑制活鎖現象,但對伺服器的性能沒有什麼根本性的改進;當系統出現接收活鎖跡象時,可以採用暫時關閉中斷的方法來緩和系統的負擔,當系統緩存再次可用時可以再打開中斷,但這種方法在接收緩存不夠大的情況下會造成數據包丟失。
Web伺服器性能是整個Web系統的關鍵環節,提高Web伺服器的性能也是長久以來人們一直關注的課題。這里通過對Web伺服器的工作原理和現有的優化方法和技術的分析,得出了對待Web伺服器性能的提高也應該具體問題具體分析,要在具體的應用環境中,根據其特點來採取相應的優化措施。

閱讀全文

與如何提高web伺服器相關的資料

熱點內容
土豆app下載了怎麼注冊 瀏覽:843
雲伺服器一般租多大 瀏覽:469
屏幕錄制app怎麼樣 瀏覽:686
義烏市聯DNS伺服器地址 瀏覽:669
App二級頁面怎麼做 瀏覽:956
提高pdf清晰度 瀏覽:979
伺服器網卡mac地址怎麼查 瀏覽:114
裁決之地伺服器為什麼這么卡 瀏覽:597
民生app怎麼查保險 瀏覽:467
單片機藍牙驅動代碼 瀏覽:467
php實現多選後公開 瀏覽:645
map中的值為數組的怎麼編程 瀏覽:261
加密貨幣怎麼登錄 瀏覽:1002
如何看本機伺服器實例名 瀏覽:388
變頻器加密密碼 瀏覽:796
美國銀行加密市場 瀏覽:384
我的世界伺服器如何tp玩家 瀏覽:26
app下載統計怎麼找 瀏覽:264
荔枝app怎麼看適合自己的發型 瀏覽:371
魔獸世界client文件夾 瀏覽:541