寫給WEB2.0的站長 不僅僅是潑冷水(2)_建站經(jīng)驗(yàn)教程
推薦:站長的樸實(shí) 站長的共鳴不說話的站長 租一間房子,拉一條網(wǎng)線,借錢買一臺電腦,很多個(gè)人站長就這樣開始了自己的站長生涯。 站長是沒有早晨的,當(dāng)早市上人潮洶涌的時(shí)候,他們才剛剛?cè)胨�,在夢中他們擁著QQ上那個(gè)遠(yuǎn)方的女孩,假如這時(shí)候有人在他們旁邊,定會(huì)看到他們臉上燦爛的笑臉。 中午醒來
結(jié)論:WEB2.0前期設(shè)計(jì)應(yīng)該有良好的散列考慮,程序應(yīng)該能有配合的擴(kuò)充性,符合數(shù)據(jù)庫的擴(kuò)充
D公司
D公司是一個(gè)各個(gè)方面做的比較好的公司,做了CDN加速,圖片也獨(dú)立分出了N個(gè)服務(wù)器,數(shù)據(jù)庫不錯(cuò)的一個(gè),(CTO是個(gè)數(shù)據(jù)庫專家),系統(tǒng)崩潰的原因在于WEB,按道理說WEB很輕易做集群的,但是發(fā)現(xiàn)集群并解決不掉問題,他們的集群只答應(yīng)做4臺的WEB集群,但是4臺都當(dāng)?shù)袅�。仔�?xì)分析,找到原因,我估計(jì)整個(gè)也是大部分CTO最輕易犯的一個(gè)錯(cuò)誤,或者說他們根本就想不到的問題,就是WEB上傳的問題,上傳的時(shí)候由于時(shí)間的原因,線程是保持鏈接的,300個(gè)線程就可以把一個(gè)WEB Server當(dāng)?shù)袅�。解決方案:這個(gè)最簡單,把上傳和其他耗能大戶分離出獨(dú)立出來。程序改動(dòng)不是很大,但是之前半個(gè)月速度滿對用戶體驗(yàn)的損失也不可小視。
結(jié)論:沒有什么結(jié)論了,究竟有海量訪問經(jīng)驗(yàn)的CTO不多,也就是那幾個(gè)大站的。
總結(jié):不是潑冷水,模擬其實(shí)是很輕易的,隨便找?guī)讉(gè)WEB程序員就能做到,并且很簡單,速度可能還很高效,因?yàn)閃EB2.0無非就是跟數(shù)據(jù)庫打交道,會(huì)操作數(shù)據(jù)庫就會(huì)做。但是真正做大并不輕易,因?yàn)槟軕?yīng)付海量訪問的程序并不簡單,現(xiàn)在的程序員都太自命不凡,其實(shí)真正有經(jīng)驗(yàn)的并不多,不要相信一個(gè)月薪5K--10K的程序員能給你多大的驚喜,能應(yīng)付海量訪問的程序員不是那個(gè)價(jià)格。假如您想做2.0,想做大,有幾個(gè)個(gè)建議:
一、找DBMS的專家設(shè)計(jì)好數(shù)據(jù)庫,大部分程序員都不知道分區(qū)視圖,數(shù)據(jù)散列,數(shù)據(jù)組的概念。
二、設(shè)計(jì)好程序架構(gòu)(這個(gè)其實(shí)不難,有個(gè)高人指導(dǎo)就行了),保持良好的擴(kuò)展性,成本考慮可以找兼職的系統(tǒng)架構(gòu)設(shè)計(jì)師做好系統(tǒng)架構(gòu),確定將來的發(fā)展瓶頸。
三、考慮好文件存貯的問題。文件存貯的技術(shù)含量看起來很低,其實(shí)是很高的,可以考慮反向代理的方案。文件存貯出問題了,站點(diǎn)基本上就完蛋了,不僅僅是RAID的問題和存貯服務(wù)器的問題,不過道理倒是一點(diǎn)就破的。
四、中國國情考慮,這個(gè)最致命,需要考慮電信和網(wǎng)通的問題,CDN并不能解決所有問題。互動(dòng)性的東西并CDN并不是很有效。最要害的是,現(xiàn)有的雙線機(jī)房碰到DDOS攻擊基本上都會(huì)當(dāng)?shù)�,原因很簡單,雙線機(jī)房都是私人機(jī)房,本身就不會(huì)有太高的帶寬,隨便攻擊一下就可以D掉(順帶提一個(gè)笑話,我知道一個(gè)雙線機(jī)房的老總總共1G的帶寬卻買了4G的金盾墻,很簡單800M的攻擊就可以搞定)。
五、網(wǎng)絡(luò)延遲的問題,這是分布式系統(tǒng)必須要考慮的,程序要能容忍0到100秒的數(shù)據(jù)延遲的功能,也就是同步的問題。不要小看這幾十秒,問題很大的,假如你的站點(diǎn)有交互式功能,比如即時(shí)聊天,你可以想象一下是個(gè)什么結(jié)果。對于即時(shí)聊天的東西,可以用反向代理來解決(成本較高)。但是對于留言和評論的影響不大,但是假如系統(tǒng)為了健壯做了緩存和靜態(tài)化的時(shí)候,這個(gè)東西可能就是災(zāi)難性的了。
六、分散你的程序,假如你沒有太多的資金構(gòu)筑動(dòng)輒百萬的服務(wù)器,建議把功能分散開來,比如相冊一臺服務(wù)器,留言一臺服務(wù)器。
七、看好你的程序員,假如沒有很好的激勵(lì)措施的話你的程序員很輕易寫出敷衍性的代碼,而這個(gè)可能就是將來的大患,程序架構(gòu)定下來后要修改可能就要費(fèi)牛勁了。最好你的CTO能對你100%的衷心,100%的負(fù)責(zé)。
八、文件同步的問題,這個(gè)問題可能你覺得沒有必要,假如你看一下網(wǎng)通和電信的TTL就明白了,同步要支持續(xù)傳,并且不能是持續(xù)的,否則你的成本會(huì)高出N倍,不要期望能通過你的軟件實(shí)現(xiàn),交給你的程序員吧,把上面的話告訴他他就知道怎么做了。
九、最狠的一個(gè)問題了,也是吃虧最大的問題,不管您跟網(wǎng)警的關(guān)系多好,看好你的用戶,審核好你的東西,一被停機(jī)可能就致命,本人就吃過N次虧。
分享:什么是垂直搜索?垂直搜索是針對某一個(gè)行業(yè)的專業(yè)搜索引擎,是搜索引擎的細(xì)分和延伸,是對網(wǎng)頁庫中的某類專門的信息進(jìn)行一次整合,定向分字段抽取出需要的數(shù)據(jù)進(jìn)行處理后再以某種形式返回給用戶。 垂直搜索引擎和普通的網(wǎng)頁搜索引擎的最大區(qū)別是對網(wǎng)頁信息進(jìn)行了結(jié)構(gòu)化信息抽取,也就是
- 相關(guān)鏈接:
- 教程說明:
建站經(jīng)驗(yàn)教程-寫給WEB2.0的站長 不僅僅是潑冷水(2)
。