摘要:
- 剛開始,我們在裝有RedHat 5 64bit Linux系統的惠普DL360G5伺服器上,利用aiCache緩存加速了十個站點。
- 我們使用了aiCache的各個特性,包括緩存POSTs 命令,參數丟棄,終止內容回應,提取日誌,標記原始伺服器(這項功能不止幫了我們一次)以及一些其他的特性。
- 通過使用aiCache的后備管理模式,我們在消除了對網站流覽者的不利影響的同時,還極大的減少了恢復服務的時間。
- 即便在剛開始使用aiCache的時候,報告就顯示網站反應時間(網頁載入時間)將近下降了30%。現在,所節省的反應時間還要更接近於這個值。
- 每一個人,甚至是管理部門,都愛上了這個表格形式的即時資料統計螢幕。事實上,這是在整個公司電腦桌面上的一個可隱藏的標準視窗,現在這個視窗已經代替了其他的監測工具。
- 我們利用專門監控系統和網路的應用程式——Naggios,通過對SNMP下的aiCache資料進行讀取,記錄日誌和繪製資料表格。
- 目前,我們打算把aiCache廣泛應用於公司裏更多的站點,同時緩存第三方APIs 。
- 在一份有趣的記錄裏,我們的aiCache伺服器能對每台伺服器達到一百萬次緩存回應。我決定對它們進行壓力測試。令人驚奇的是,每台aiCache伺服器依然同樣可以處理每秒25,000次請求,卻只緩存極少數的數據!
- 我依然對aiCache所使用資源之少略感困惑。那些使用aiCache的伺服器能夠應答每秒超過4000次的請求,而通過top(顯示任務進程的命令)和其他linux實用程式卻還可以看出整個系統資源有99%是閒置的。
- 我們現在正在著手減少一些原始伺服器的數量,或重新安排它們的用途,因為我們再也不需要如此之大的伺服器集群了。這樣下去,我相信我們還會節省不少,因為以前我們不得不去購買眾多昂貴的硬體,最重要的是還會受資料中心的空間和能源限制,而現在,不僅可以撤掉一些硬體設施,我們更為新的應用騰出了空間!
- 在我們公司,aiCache提倡的“重新讓生活盡在掌握”的口號變成了現實。停機的時代已經過去,員工們熱情高漲,效率提升,管理人員從心裏愛上了aiCache。
真的不知道如何感謝你們給我帶來這麼棒的產品和技術支援!難道還用猶豫嗎,我極力向大家推薦aiCache!
——Rashid Karimov, Director Platform, CNBC.com
aiCache如何幫助媒體公司處理病毒和網路擁堵
安裝aiCache之前
自人們可以從媒體公司的網站上下載最受歡迎電視節目後,此類網站遭遇了嚴重的網路擁堵。由於熱門電視劇內容本身就是一個越炒越熱的東西,一個某部電視劇的忠實FANS帶動周圍一群同事朋友一起觀看並不是什麼怪事。然而,這種會像病毒一傳播的觀看熱情卻使網站電視劇下載次數成倍增長,從而產生了之前所說的網路擁堵。
媒體公司網站的前端伺服器集群運行Apache和一個自定義的PHP應用,共包含14個伺服器。代碼連接到一個MySQL 5 DB介面上,並通過媒體ID來搜索媒體元資料,如剪輯的名稱,內容,上映時間,演員和劇情簡介等。另外,用戶在該網站上可以看到一些通過抓取視頻而得到的電影圖片,還可以通過鏈結到達每部電影專門的討論區板塊。
經過網站一段時間的運作,他們發現現有設置根本無法應對由於用戶觀看熱情所致的網路擁堵。在繁忙時段,Web伺服器負荷遠超出20,回應時間增至10-15秒,甚至更糟,“視頻播放器”永遠處在緩衝階段,網站直接陷入無法回應的僵局。根據負載等化器在整個網站癱瘓之前收集的資訊可知,用戶對動態網頁請求高達每秒245個。儘管他們試圖把資料庫變成一個主節點和兩個唯讀複製的集群,問題仍然存在。
該網站的技術投資預算已大大超支,這使得資料庫原本就有限的空間和資源更加緊張。
初試aiCache
媒體公司在初步瞭解aiCache之後,從現有伺服器集群中專門選出兩台安裝了64位Linux的雙核伺服器用於證明aicache對網站的實際功效。(安裝aicache無需對網站配置做出其他的更改)
配置aiCache
通過配置,aiCache可以對包括“最新消息”、“最受歡迎”、顯示特定視頻網頁和提供元資料到特定媒體等PHP腳本輸出緩存約10秒。
結果
在媒體公司的網站安裝aiCache之後,事情變得完全不一樣了!需要原始伺服器處理的用戶流量將少為原來的24/1,網站在向人們提供流暢的節目直播的同時,還有大量web伺服器資源是閒置的。資料庫群的連接數量也減少到一位數。
使用aiCache在web伺服器前端處理用戶請求僅2周後,媒體公司就決定將伺服器集群的規模由14台減少到3台,資料庫伺服器減少為一台減少 (原來是HA設置)。
鑒於原始伺服器負載和整個託管設施的大量減少,該網站抓住機會為自己添加了更多的動態網頁內容,如在原先的視屏頁面中加入了用戶評論板塊。網站還重新利用了由於配置aicache而閒置下來的web伺服器資源。
意外驚喜
aiCache的神奇功效在媒體公司的網站得到了充分發揮,它可以即時監控用戶流量,識別原始伺服器上緩慢的腳本。
aicache利用網站原先就存在的SNMP,使媒體公司可以收集每秒請求數量和回應時間的統計資訊並製作表格。一旦發現問題,aicache還可以生成警報郵件。
通過配置,aiCache選擇性日誌抑制功能不再記錄javascript(.js)和內容樣式表(.css)請求,方便日誌管理。
網站可以打開aiCache運行狀態的壓縮包,以處理許多大容量的.js和.css腳本,減少輸出流量。同時他們還發現,輔助內容也大幅減少——這可能要歸功於aiCache清除了HTTP的回應條件。
綜述
現在,媒體公司網站運行順利,用戶的“電視劇熱情”帶來網站受歡迎度的空前高漲,停機煩惱不復存在。
網站可以輕鬆運行多個站點,擁有富餘的資料處理中心設施,並廣泛利用各種技術,包括PHP,Java,Linux和運行在Microsoft Windows平臺的ASP。一些頁面內容靠一個主要的CDN即可傳輸。
網站規模(HW footprint):共擁有超過400台伺服器。
該網站的硬體設施配置如下:微軟Forefront伺服器,規格為1 RU(外形滿足EIA規格、厚度為4.445cm),均帶有雙核Intel或AMD CPU,RAM為4GB或8GB,Cisco行業標準的十億位元介面轉換器。
負載等化器和防火牆服務十分充裕,可對伺服器集群實現專門的負載均衡和保護。
aiCache的硬體配置:雙核64位元,16GB記憶體 Intel 1RU伺服器,其餘是根據客戶現有條件進行設置的:知名廠商的64位Linux分發版,包含OS支援,富餘的帶有RAID磁片整列的硬碟驅動器和網路連接。
aicache為其節省的開支:
- 28個新伺服器——5000美元/台,共140,000美元
- OS許可:約20,000美元
- DB許可:約15000美元
- 伺服器安裝費用:共約7千美元
- 13台伺服器重置和其他應用程式的OS許可:共7萬5千美元
- 共節省超過200000美元
aiCache如何使一個Web2.0式社區網站在原有基礎上提升承載量
安裝aiCache之前
這個案例所要研究的是一個Web 2.0式的社區網站,它通過自定義的軟體由用戶自己創建帳戶資料存儲,相冊和博客。除此之外,網站還設有一個採用開源解決方案的留言板。
網站的多層架構設置包括由26台運行Apache/PHP和Apache/Tomcat的伺服器所構成的前端伺服器集群,由12台專門運行J2EE的伺服器所構成的Jboss集群,多個資料庫伺服器,包括Oracle和MySQL群。另外,包含NFS文檔存儲的應用由知名供應商提供。
訪問者如果希望使用這個社區網站提供的各項服務,如創建檔,存儲照片等,就必須在完成註冊後進行登入。當然,就像新浪搜狐的博客一樣,訪問者也可以對其匿名流覽。
然而,這個線上社區網站的註冊人數越多,訪問量越大,每個用戶也就越容易遇到網路擁堵的問題。每次對某個頁面的流覽行為都需要Tomcat和Jboss伺服器執行一次代碼。大部分伺服器的負載量與用戶流量呈直接的正比關係,即用戶越多,負載越沉重。在每天的網站流覽高峰期,網頁載入時間甚至延長到10秒左右……這些情況使得線民們怨聲載道,網站訪問者人數停止增長,註冊用戶開始減少。
據網站內部的技術人員預測,想要未將來雙倍數量的註冊用戶提供服務,就必須增加雙倍的硬體設施。現有伺服器的能力顯然是無法滿足激增的容量需求的。網站不得不考慮增加功耗和冷卻設備,甚至花費高昂的代價轉移到更強勁的資料處理中心。總體情況不容樂觀……
顯然,現有網站構架在嚴峻的形勢下顯得力不從心。每天,網站的技術團隊為處理站點運行中不斷出現的麻煩狀況而忙得團團轉,又哪有精力“翻新”代碼庫,提升網站長遠的競爭力呢?
初試aiCache
在這個社區網站得知我們的網路加速產品——aiCache之後,立即就決定進行測試安裝。他們將aiCache安裝在四台全新的雙核64位的伺服器上,每台均帶有32GB的RAM。
經過技術人員研究aiCache常規用戶案例和HTTP網路流量模型之後,他們將aiCache配置為對大部分的網頁緩存60秒,這包括網站首頁上的 “最新消息”、“熱點追蹤”、“星級用戶”版塊。而用戶的個人主頁,相冊和博客也可進行緩存。同樣能夠緩存的還有包括首頁,對於用戶論壇版塊的首頁,頭版頭條,同一標題下的所有帖子和文章觀點在內的用戶論壇。
同上,這家社區網站還對圖片,.js, .css和其他輔助內容進行緩存,並將其TTL值配置為七天。
結果
網站安裝aiCache之後,原始伺服器集群所面對的網路流量減少了85%。即使在一天中的流量高峰期,網站大量的配置資源也都是閒置的。得益于文檔應用負載的減少,資料庫伺服器的連接數和負載量大規模降低。
由於網路擁堵顯著減少,這家社區網站決定降低伺服器集群規模——將伺服器數量由26台減至6台,除此之外, Jboss伺服器的數量也從12台降到了4台。對於資料庫伺服器,2個2節點集群就足以應付日常運作了。
另外,通過減少大量多餘的承擔讀取複製工作的資料庫伺服器的數量,網站還進一步精簡了設置。
在aiCache的幫助下,網站精簡了大量多餘的配置,為現有的資料處理騰出了富餘能力以應對未來的挑戰。網站不再需要轉移到其他的資料處理中心,也無需對伺服器託管再做打算。
意外驚喜
通過充分利用aiCache,網站獲得的好處可不只一點點!
第一, 他們可以即時監控用戶流量,識別原始伺服器過慢代碼並進行預警。
第二, 由於aiCache可以對SNMP協議加以利用,故網站通過一個知名的開源監測資料包,收集到了大量SNMP的物件標示並製表,對反常情況發起警報。
第三, aiCache選擇性日誌調控功能可以控制日誌檔的大小。
第四, 由於原始伺服器騰出了富餘能力,它們現在可承擔對網頁內容進行壓縮的工作。
第五, 通過配置aiCache,網站可對動態頁面設置更大TTL值的以緩存更長時間,同時做到一旦頁面內容發生改變立即刷新。我們不難發現,正是由於網站能夠按需終止緩存內容,他們才能進一步不斷精簡和優化各項設置。
最後, 根據自身情況,這家社區網站還做了一個很有意思的決定——創建一個自定義命令行腳本用來執行“sir”命令,以得到了一個可以即時顯示吸引最多用戶拜訪的URL目錄。這樣一來,網站就可以對其加以整合添加到“熱門點擊”版塊中去,方便用戶查找。
綜述
現在,我們再總結一下這個大型的線上社區網站的綜合情況:
技術方面,這家網站使用了以PHP和Java為基礎的開源自定義軟體。設置包括Apache/PHP,Apache/Tompat/Tboss 。
後端資料庫:MySQL和Oracle。
網站規模(HW footprint):共擁有超過60台伺服器
硬體設施配置:微軟Forefront伺服器,規格為1 RU(外形滿足EIA規格、厚度為4.445cm),RAM為4GB或8GB, 足夠的網路連接。
資料庫群:在SAN上儲存的雙4核。
負載等化器和防火牆服務十分充裕,可對伺服器集群實現專門的負載均衡和保護。
伺服器系統通過專門的多餘的負載等化器實現負載均衡,通過專門的多餘的防火牆保護。
aiCache硬體配置:4台雙插槽雙核64位元,16GB記憶體 Intel 1RU伺服器,每台帶有16GB的記憶體。因為該網站的技術團隊已經對一個商業Linux分發版十分熟悉,所以系統管理員和網站基礎設施團隊迅速掌握了aiCache的安裝和配置。
節省的開支
- 60個新伺服器——5000美元/台,共300,000美元
- OS許可:約42K美元
- DB許可:約120K美元
- 伺服器安裝費用:共約1萬8千美元
- 共節省超過60萬美元
預算不包括工程重新定位的花費,這部分預計有18萬美元的花費或者更多。
總之,在安裝aiCache之後,這家網站精簡了硬體配置,節省了現有資料處理中心的空間,耗能和冷卻設備。最重要的是,他們即使在網路流量高峰也可正常運作,高枕無憂。
aiCache如何幫助電子商務網站應對假日“網上購物熱”
安裝aiCache之前
眾所周知,由於商品可選範圍廣,價格相對低廉,客戶服務比較到位等優勢,傳統電子商務網站吸引了越來越多的人加入到網上購物的熱潮之中。我們下面案例的主角就是其中一家人氣高漲的電子商務網站,隨著業務的不斷發展,其所經營的商品包羅萬象,五花八門。
這是一家很典型的電子商務類網站,首頁上打著醒目的促銷廣告,列出了熱銷單品,當然,用戶也可根據需要鍵入關鍵字進行產品搜索。網站的“商品類目”中包括電子產品,家裝用品,保健美容產品和一些其他常見產品等。
這個網站所面對的網路流量同樣十分典型——97%的用戶都是在這裏流覽網頁,閱讀描述,看圖片,比較其他賣家的相同產品。
網站現有設置包括一個擁有32台伺服器的前端伺服器集群,運行Microsoft IIS。存儲產品和用戶資訊的微軟SQL資料庫集群與自定義ASP代碼相連。同時,也有少部分伺服器在運行客戶服務應用。
隨著假期的臨近,“網上購物熱”的浪潮也即將襲來。很明顯,為了迎接眼下的流量高峰和可能出現的網路擁堵,這家電子商務網站迫切需要優化站點性能,提升運行能力。
然而,綜合各項技術推測,這家網站發現這將意味著需要花費高昂的代價把前端和後端的伺服器集群規模擴大兩倍左右。幸好,這不是唯一的辦法。這家電子商務類網站經過考查與比較,做出了一個顯然更佳的選擇——aiCache!
配置aiCache
網站選出了三台雙插槽雙核64位元Intel伺服器以專門配置aiCache,每台伺服器都帶有16GB的記憶體。
最初,他們將aiCache配置為對包括產品搜索,主頁,產品類目在內的ASP腳本的輸出緩存10秒。而對產品圖片和展示頁面設定為緩存24小時。
通過將TTL值設置為一天,aiCache可將大量緩存在RAM中的.Js和.css檔直接對相應的用戶請求作出回應,根本無需伺服器集群“操心”。
結果
網站安裝aiCache之後,原始伺服器集群所面對的網路流量減少了95%。網路服務器的負載量也減少到0。 連接到資料庫結群的介面也降至一位元數。
經過緩存的頁面的回應時間大幅縮短,網站的TTFB值從3.2秒降到4毫秒!曾經耗時最長的產品搜索提速最為明顯—從4.7秒降到4毫秒!
配置aiCache在伺服器前端處理用戶流量僅三周,這家電子商務網站就決定將IIS伺服器34台減少為12台,將資料庫集群減少為4台(出於HA的原因,資料庫仍保持集群狀態)。
鑒於原始伺服器負載和整個託管設施的大量減少,該網站抓住機會為自己添加了更多的動態網頁內容,如在原先的視屏頁面中加入了用戶評論版塊。網站還重新利用了由於配置aiCache而閒置下來的web伺服器資源。商品系統裏也加入了更多的庫存量單位(SKU),如樣式,顏色等等。然而,即便網站不斷增加商品明細,網站性能也不會再像以前那樣打折扣了。
意外驚喜
通過充分利用aiCache,網站可即時監控用戶流量,包括SNMP集成。
另外,網站可以得知用戶請求最多的URL是什麼,並將其放入“熱銷單品”等其他明細版塊中。
aiCache的選擇性日誌調控功能避免對輔助內容創建日誌,這樣減少日誌檔的大小和處理時間。
綜述
這家電子商務網站的託管設備包括富餘的資料處理中心。自定義ASP前端,所有的產品和客戶資訊都保存在一系列的微軟SQL資料庫中。
網站規模(HW footprint):主要位置有近60台伺服器,次要位置有少量的伺服器。
產品明細:28類不同的產品目錄中包含大約18,000個最小庫存單位(SKU)。
aiCache 硬體配置:兩台雙核64位元,16GB記憶體 Intel 1RU伺服器,每台帶有16GB的記憶體。其餘是根據客戶現有條件進行設置的:知名廠商的64位Linux分發版,包含OS支援,富餘的帶有RAID磁片整列的硬碟驅動器和網路連接。
節省的開支
- 36個新伺服器——5000美元/台,共180,000美元
- OS許可:約1萬6千美元
- DB許可:約1萬2千美元
- 伺服器安裝費用:共約1萬8千美元
- 26台伺服器重置和其他應用程式的OS許可:共9萬5千美元(分期付款)
- 共節省超過32萬美元
aiCache如何幫助新聞網站減少硬體配置的同時提高性能
安裝aiCache之前
這個案例中所討論的是一個涵蓋政治,經濟,健康,生活方式等國內和國際新聞的傳統的新聞網站。網站的大部分內容通過自定義的CMS(內容管理系統)進行傳輸,另外,還有一些文章直接來自相關通訊社,不需要過多處理。每天,大約170篇新聞報導和20個視頻片斷通過CMS出現在這家網站上。
網站的Web伺服器集群中有不超過30台伺服器,它們把CMS存儲在後端資料庫伺服器的內容還原,按用戶請求進行提交。用戶還可以流覽許多來自通訊社的報導,這些報導直接從資料庫輸出即可,基本不需要網站進行額外處理。此外,用戶可根據自身需要對社論和通訊社報導鍵入索引搜索。
網站的點擊率隨時間逐漸增加,基礎設施的局限性也開始逐步顯現。由於前端web伺服器,後臺資料庫伺服器和搜索引擎伺服器繁忙,網站的回應時間開始增加。由於每一次搜索時間的增加,用戶要求進行某項搜索的請求開始“紮堆排隊”,你能想像花費30分鐘去等待一次新聞搜索結果的情形嗎?在網路高峰時段,CMS也會變成反應遲鈍,這使得網站內容編輯人員非常沮喪的。
很多獨家報導變成 “病毒”---在網站上發佈幾分鐘就會導致嚴重的流量高峰(2x-4x),甚至有時會引起整個網站的崩潰。
一項內部估計指出,為了應對發佈“爆炸性”新聞而引發的流量高峰和擁堵,硬體設備至少要翻倍。
初試aiCache
這家新聞網站在研究過aiCache典型客戶案例和HTTP流量樣式之後,將aiCache配置為對網站首頁,新聞目錄和社論緩存60秒,對搜索結果緩存10秒。出於版權的考慮,通訊社報導仍然從資料庫中發佈,但是在第一次對用戶提交後可緩存1小時。
圖像,,java腳本和css的緩存時間能夠被延長到一天至一周。
結果
網站安裝aiCache之後,原始伺服器集群所面對的網路流量減少了85%。實際上,即使網站上發佈了像病毒一樣的獨家報導或爆炸性消息,web伺服器,資料庫伺服器和搜索引擎伺服器也有相當的富餘能力。用戶搜索時間從原先“可怕”的30分鐘提速為現在的4秒。
配置aiCache一段時間後,這家新聞網站決定把以前的60台伺服器減少到低於30台。一些伺服器被關閉,另外一些則提供類似網路社區的服務,如允許用戶對新聞報導發表的評論和留言。當然,aiCache同樣也為這些伺服器提供加速。
網站的回應速度明顯更快了,TTFB值幾乎為零。
意外驚喜
通過充分利用aiCache,網站可以即時監測用戶流量,識別原始伺服器上緩慢的腳本和代碼。網站還可以觀察到用戶請求次數最多的URL是什麼,以添加到網站“熱點點擊”版塊中去,方便用戶流覽,增加網站的點擊率。同理,“熱門搜索”也可以受益於aiCache。
就自定義創建CMS網頁而言,網站可有選擇地終止其中部分內容。這樣一來,當一篇新的報導出爐後,包含這個鏈結的主頁和目錄都會按照需要終止並刷新,迅速使讀者看到這篇報導。
通過利用網站本身的SNMP監測資料包,aiCache可以收集每秒請求數和回應時間,製表,對反常情況發起警報。
aiCache的選擇性日誌調控功能避免對輔助內容創建日誌,以減少日誌檔的大小。
綜述
這是一家知名的新聞網站。
網站具有自定義內容管理系統(CMS),可進行站內搜索。
訪問者可不經登入匿名對網站大部分的內容進行流覽。
網站規模(HW footprint):共擁有超過60台伺服器。
aiCache 硬體配置: 3個雙核64bit基於英代爾的1RU伺服器,帶有16GB記憶體。
節省的開支
- 40個新伺服器——5000美元/台,共200,000美元
- OS許可:約2萬8千美元
- DB許可:約1萬5千美元
- 伺服器安裝費用:共約1萬2千美元
- 26台伺服器重置和其他應用程式的OS許可:共6萬5千美元
- 共節省超過30萬美元