數(shù)據(jù)記錄超過150萬、同時在線人數(shù)4000的社區(qū),如何架構能滿足要求
離開硬件空談軟件是不現(xiàn)實的,asp.net+sql2000企業(yè)版肯定滿足你的要求,類似的我作過,
服務器 雙cpu或者4顆8顆,用戶有錢就多上, 2G內(nèi)存,越大越好,其他的容措、熱備等根據(jù)用戶要求定,硬盤一般標配的都夠用,大也無所謂,也可以web服務器和數(shù)據(jù)庫服務器分別采用一臺計算機,配置越高越好。總而言之這個系統(tǒng)不大,不用擔心。
1.硬件方面服務器集群
2.軟件方面,最解決問題得就是生成html或者用xml+xsl
其次考慮用cache,我們現(xiàn)在也在做這個,基本上是這個思路!
1、硬件要高
2、要生成靜態(tài)網(wǎng)頁HTML,(我不建議用xml+xsl,客戶端打開多頁的時候慢)
多用cache,最好能把靜態(tài)頁面都讀到cache中,
3、必須的地方如發(fā)帖回帖時候在用ASPNET
http://pop.pcpop.com/default.aspx
數(shù)據(jù)量160w主帖+4,000w回復.
人氣,自己看在線名單.
服務器配置
數(shù)據(jù)庫服務器+web服務器,圖片服務器只是為了分流帶寬.
其實注意的問題
1:分表
2:Cache
3:數(shù)據(jù)操作部分多考慮存儲過程的執(zhí)行效率
4:底層的代碼過硬.
實時在線10多萬用戶的天涯社區(qū)(www.tianya.cn)用的技術是:
1、內(nèi)容緩存。
2、應用層的語句優(yōu)化。
3、高效的索引
4、分庫分表,天涯訪問量大的版塊甚至單獨分成一個庫,用分區(qū)視圖和鏈接服務器統(tǒng)一調(diào)用。
5、數(shù)據(jù)庫調(diào)優(yōu),通過事件探查器對提交語句進行評估,優(yōu)化。
6、調(diào)用頻率非常高的表“釘”在內(nèi)存中,減少磁盤IO。
7、通過服務器內(nèi)的Agent,自動采集服務器CPU、內(nèi)存、磁盤、網(wǎng)卡、連接數(shù)等參數(shù),讓網(wǎng)管即時了解WEB和DB服務器的實時性能參數(shù)。
呵呵,轉(zhuǎn)篇帖子給土人
首先謝謝dudu,今天訪問速度和穩(wěn)定性提高很明顯,不用對著sorry頁發(fā)呆了@_@
免費的安家在cnblogs上,很是感謝。最近看dudu為訪問速度辛苦,想幫點忙,可是一直很懶人又苯,只好事后總結(jié)一下了。
個人猜測總結(jié)的dudu目前提高性能的辦法:
1.阻止惡意robot
2.Rss的優(yōu)化緩存
3.頁面的緩存和靜態(tài)化
4.數(shù)據(jù)庫的優(yōu)化和查詢緩存
5.DotNet和IIS 6的配置優(yōu)化
6.DotText代碼的重構
7.Web頁面的Html重構和布局優(yōu)化
8.沒想到,請dudu補充??
個人分析和建議:
1.目前看來,最大的速度問題是來自搜索的robot的瘋狂爬行(cnblogs里的好東西太多了?),造成類似破壞的未來還可能來有惡意攻擊或是病毒。dudu目前的辦法是Asp.net程序里拒絕訪問,或是高峰時段拒絕訪問,但是涉及了一個檢索的問題,所以建議返回一個錯誤讓robot自己處理,比如:
• 500.12 - 應用程序正忙于在 Web 服務器上重新啟動。
• 500.13 - Web 服務器太忙。
• 403.9 - 用戶數(shù)過多。與該服務器連接的用戶數(shù)量超過了您設置的連接限制。
對于攻擊類,就不行了。所以建議dudu最好在防火墻上做限制,禁止同一ip的最大連接數(shù),或是幾小時內(nèi)禁止訪問。或是把目前的處理robot應用的代碼單獨出來,C#重寫用配置文件管理,不要經(jīng)過IIS處理。
2.緩存和靜態(tài)化。頁面緩存和靜態(tài)化是dudu下了大工夫的地方了。建議多注意Rss,個人管理里看來聚合的訪問比Web頁面的大多了。建議僅僅聚合摘要,也倡議大家都寫摘要,方便閱讀,也可以減輕一點服務器負擔。不知道cnblogs什么時候有自己的緩存服務器,呵呵。
3.數(shù)據(jù)庫的問題,最大化利用Sql Server的本身特性就好。建議注意管理并發(fā)鎖定,使用行間鎖定,可提高效率。重視查詢緩存的策略,提高命中。
4.代碼和頁面的重構。這就要辛苦dudu了,也沒太多說的。想說的是除html+css外,還要注意頁面上的布局顯示,比如首頁該顯示的內(nèi)容,目前顯示的排名人數(shù)是不是太多?一些個人的頁面上的圖片,flash,第3方計數(shù)器等會不會影響最終用戶頁面打開速度,造成打開慢的印象。
5.Win2003和IIS6 本身,這個還是讓大家來建議吧。
寫了這么些,希望能為cnblogs出點力,不對就多包涵了。倡議大家都貢獻點自己的力量,讓cnblogs更好。 希望能有好的提議,所以暫時發(fā)首頁。