999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談大型高并發高負載網站的服務器優化

2009-05-21 10:09:34趙中鋒
現代企業文化·理論版 2009年7期

摘要:文章研究了大型并發高負載網站的系統架構及服務器優化問題中的一些關鍵問題,具體包括服務器整體性能考慮、Socket優化、硬盤級緩存等,對于這些問題,我們給出了相應低成本的一些解決方案。

關鍵詞:大型網站架構;服務器優化;高負載網站

中圖分類號:TP315文獻標識碼:A

文章編號:1674-1145(2009)11-0143-02

一、概述

一個小型的網站,比如個人網站,可以使用最簡單的html靜態頁面就實現了,配合一些圖片達到美化效果,所有的頁面均存放在一個目錄下,這樣的網站對系統架構、性能的要求都很簡單,隨著互聯網業務的不斷豐富,網站相關的技術經過這些年的發展,已經細分到很細的方方面面,尤其對于大型網站來說,所采用的技術更是涉及面非常廣,從硬件到軟件、編程語言、數據庫、WebServer、防火墻等各個領域都有了很高的要求,已經不是原來簡單的html靜態網站所能比擬的。

大型網站,比如甘肅聯合大學網站。在面對大量用戶訪問、高并發請求方面,基本的解決方案集中在這樣幾個環節:使用高性能的服務器、高性能的數據庫、高效率的編程語言、還有高性能的Web容器。但是除了這幾個方面,還沒法根本解決大型網站面臨的高負載和高并發問題。下面我們從小成本的角度考慮服務器優化措施,本文重點考慮大型高并發高負載網站的系統架構中的關鍵技術——服務器優化。

二、服務器優化

(一)服務器整體性能考慮

對于價值昂貴的服務器來說,怎樣配置才能發揮它的最大功效,又不至于影響正常的服務,這是在設計網站架構的時候必須要考慮的。常見的影響服務器的處理速度的因素有:網絡連接,硬盤讀寫,內存空間,CPU速度。如果服務器的某一個部件滿負荷運轉仍然低于需要,而其他部件仍有能力剩余,我們將之稱為性能瓶頸。服務器想要發揮最大的功效,關鍵的是消除瓶頸,讓所有的部件都被充分地利用起來。

(二)Socket優化

以標準的GNU/Linux 為例。GNU/Linux 發行版試圖對各種部署情況都進行優化,這意味著對具體服務器的執行環境來說,標準的發行版可能并不是最優化的。GNU/Linux 提供了很多可調節的內核參數,可以使用這些參數為服務器進行動態配置,包括影響Socket 性能的一些重要的選項。這些選項包含在 /proc 虛擬文件系統中。這個文件系統中的每個文件都表示一個或多個參數,它們可以通過cat 工具進行讀取,或使用echo 命令進行修改。

(三)硬盤級緩存

硬盤級別的緩存是指將需要動態生成的內容暫時緩存在硬盤上,在一個可接受的延遲時間范圍內,同樣的請求不再動態生成,以達到節約系統資源,提高網站承受能力的目的。Linux環境下硬盤級緩存一般使用Squid。

Squid是一個高性能的代理緩存服務器。和一般的代理緩存軟件不同,Squid用一個單獨的、非模塊化的、I/O驅動的進程來處理所有的客戶端請求。它接受來自客戶端對目標對象的請求并適當地處理這些請求。比如說,用戶通過瀏覽器想下載(即瀏覽)一個web頁面,瀏覽器請求Squid為它取得這個頁面。Squid隨之連接到頁面所在的原始服務器并向服務器發出取得該頁面的請求。取得頁面后,Squid再將頁面返回給用戶端瀏覽器,并且同時在Squid本地緩存目錄里保存一份副本。當下一次有用戶需要同一頁面時,Squid可以簡單地從緩存中讀取它的副本,直接返回給用戶,而不用再次請求原始服務器。當前的Squid可以處理HTTP,FTP,GOPHER,SSL和WAIS等協議。

Squid 運行的時候,默認會在硬盤上建兩層hash目錄,用來存儲緩存的Object。它還會在內存中建立一個Hash Table,用來記錄硬盤中Object分布的情況。如果Squid配置成為一個Squid集群中的一個的話,它還會建立一個Digest Table(摘要表),用來存儲其他Squid 上的Object摘要。當用戶端想要的資料本地硬盤上沒有時,可以很快地知道應該去集群中的哪一臺機器獲得。在硬盤空間快要達到配置限額的時候,可以配置使用某種策略(默認使用LRU:Least Recently Used最近最少用)刪除一些Object,從而騰出空間。

默認配置的Squid,沒有經過任何優化的時候,一般可以達到50% 的命中率。如果需要,還可以通過參數優化,拆分業務,優化文件系統等辦法,使得Squid達到90% 以上的緩存命中率。Squid處理TCP連接消耗的服務器資源比真正的HTTP服務器要小得多,當Squid分擔了大部分連接,網站的承壓能力就大大增強了。

(四)內存級緩存

內存級別的緩存是指將需要動態生成的內容暫時緩存在內存里,在一個可接受的延遲時間范圍內,同樣的請求不再動態生成,而是直接從內存中讀取。Linux環境下內存級緩存Memcached是一個不錯的選擇。

(五)CPU與IO均衡

在一個網站提供的所有功能中,有的功能可能需要消耗大量的服務器端IO資源,像下載,視頻播放等,而有的功能則可能需要消耗大量的服務器CPU資源,像視頻格式轉換,LOG統計等。在一個服務器集群中,當我們發現某些機器上CPU和IO的利用率相差很大的時候,例如CPU負載很高而IO負責很低,我們可以考慮將該服務器上的某些耗CPU資源的進程換成耗IO的進程,以達到均衡的目的。均衡每一臺機器的CPU和IO消耗,不僅可以獲得更充分的服務器資源利用,而且還能夠支持暫時的過載,遇到突發事件,訪問流量劇增的時候,實現得體的性能下降(Graceful performance degradation),而不是立即崩潰。如果有必要,可以通過選擇文件系統,以及修改文件系統的配置參數來達到對特定文件的讀或寫的效率最大化。

三、結語

本文對大型高并發高負載網站的服務器優化進行了詳細的研究。對于一個高并發高流量的網站來說,任何一個環節的瓶頸都會造成網站性能的下降,影響用戶體驗,進而造成巨大的經濟損失。大型網站的架構是一個非常有挑戰性的工作,本文中,我們列舉了服務器部分優化方案,然而更全面的考慮是需要的。因而,這個領域需要更多的研究。

參考文獻

[1]Erich Gamma,Richard Helm,Ralph Johnson,John Vlissides,李英軍等(譯).設計模式:可復用面向對象軟件的基礎[M].機械工業出版社,2004.

[2]Alan Shalloway,James R.Trott,徐言聲譯.設計模式解析[M].人民郵電出版社,2006.

[3]白金鵬,謝曉竹.WINDOWS NT通用網站架構實例[M].國防工業出版社,2002.

作者簡介:趙中鋒(1979- ),男,甘肅白銀人,甘肅聯合大學國資與后勤管理處助工,研究方向:資產管理及設備管理。

主站蜘蛛池模板: 中文字幕欧美日韩高清| 亚洲日韩在线满18点击进入| 狠狠色成人综合首页| 日本久久网站| 国产乱人免费视频| 精品無碼一區在線觀看 | 欧美日本在线播放| 久久久久国产精品熟女影院| 亚洲精品卡2卡3卡4卡5卡区| 91美女视频在线| 婷婷开心中文字幕| 99视频有精品视频免费观看| 亚洲天堂网在线视频| 国产美女91呻吟求| 亚洲日韩欧美在线观看| 19国产精品麻豆免费观看| 国产男人的天堂| 亚洲第一极品精品无码| 欧美中出一区二区| 97久久超碰极品视觉盛宴| 国产成熟女人性满足视频| 熟女成人国产精品视频| 2021国产精品自产拍在线| 在线国产你懂的| 欧美全免费aaaaaa特黄在线| 福利视频99| 亚洲天堂.com| 国产精品久久自在自线观看| 91综合色区亚洲熟妇p| 波多野结衣在线se| 在线国产欧美| 国产精品手机在线观看你懂的| 亚洲男人的天堂久久香蕉 | 亚洲欧洲免费视频| 亚洲av日韩av制服丝袜| 中文字幕在线视频免费| 欧美人人干| 国产精品99久久久久久董美香| 中文字幕1区2区| 伊人久久久久久久| 玖玖精品视频在线观看| 国产精品尤物铁牛tv| 国产又爽又黄无遮挡免费观看| 台湾AV国片精品女同性| 日本午夜网站| 国内a级毛片| 午夜性刺激在线观看免费| 天堂成人av| 亚洲欧美日韩另类在线一| 精品国产Av电影无码久久久| 欧美h在线观看| 欧美另类图片视频无弹跳第一页| 欧美区国产区| 99这里精品| 狠狠色丁香婷婷| 国产91色| 亚洲日本韩在线观看| 国产凹凸一区在线观看视频| 国产麻豆精品手机在线观看| 亚洲国产一区在线观看| 99热这里都是国产精品| 国产精选自拍| a级毛片在线免费观看| www.狠狠| 伊人成人在线视频| 91国语视频| 特级毛片8级毛片免费观看| 日韩黄色大片免费看| 国产jizz| 九九热免费在线视频| 中文字幕在线欧美| 香蕉eeww99国产在线观看| 再看日本中文字幕在线观看| 久久精品嫩草研究院| 欧美a在线视频| 色综合五月| 精品少妇人妻av无码久久| 精品视频一区二区三区在线播| 国产地址二永久伊甸园| 国产幂在线无码精品| 国产精品亚洲片在线va| 国产综合亚洲欧洲区精品无码|