主頁 > 知識庫 > 新網(wǎng)站初期需要注意的一些技術(shù)問題小結(jié)

新網(wǎng)站初期需要注意的一些技術(shù)問題小結(jié)

熱門標簽:陜西人工外呼系統(tǒng)怎么樣 鄭州智能外呼電銷機器人哪家強 杭州ai外呼系統(tǒng)價格 怎么給百度地圖標注自建房位置 外呼線路在哪申請 廊坊語音外呼系統(tǒng) 鶴壁防封卡外呼系統(tǒng)線路 上海電信辦理400電話號碼 畢節(jié)導(dǎo)航地圖標注
其實從純網(wǎng)站技術(shù)上來說,因為開源模式的發(fā)展,現(xiàn)在建一個小網(wǎng)站已經(jīng)很簡單也很便宜。當訪問量到達一定數(shù)量級的時候成本就開始飆升了,問題也開始顯現(xiàn)了。因為帶寬的增加、硬件的擴展、人員的擴張所帶來的成本提高是顯而易見的,而還有相當大的一部分成本是因為代碼重構(gòu)、架構(gòu)重構(gòu),甚至底層開發(fā)語言更換引起的,最慘的就是數(shù)據(jù)丟失,辛辛苦苦好幾年,一夜回到創(chuàng)業(yè)前。
減少成本就是增加利潤。很多事情,我們在一開始就可以避免,先打好基礎(chǔ),往后可以省很多精力,少操很多心。

假設(shè)你是一個參與創(chuàng)業(yè)的技術(shù)人員,當前一窮二白,什么都要自己做,自己出錢,初期幾十萬的資金,做一個應(yīng)用不是特別復(fù)雜的網(wǎng)站,那么就要注意以下幾點:

一、開發(fā)語言
一般來說,技術(shù)人員(程序員)創(chuàng)業(yè)都是根據(jù)自己技術(shù)背景選擇自己最熟悉的語言,不過考慮到不可能永遠是您一個人寫程序,這點還得仔細想想。無論用什么語言,最終代碼質(zhì)量是看管理,所以我們還是從純語言層面來說實際一點?,F(xiàn)在流行的java、php、.net、python、ruby都有自己的優(yōu)劣,python和ruby,現(xiàn)在人員還是相對難招一些,性能優(yōu)化也會費些力氣,.net平臺買不起windows server。java、php用的還是最多。對于初期,應(yīng)用幾乎都是靠前端支撐的網(wǎng)站來說,php的優(yōu)勢稍大一些,入門簡單、設(shè)計模式簡單、寫起來快、性能足夠等,不過不注重設(shè)計模式也是它的劣勢,容易變得松散,隱藏bug稍多、難以維護。java的優(yōu)勢在于整套管理流程已經(jīng)有很多成熟工具來輔助,強類型也能避免一些弱智BUG,大多數(shù)JAVA程序員比較注重設(shè)計模式,別管實不實際,代碼格式看起來還是不錯的。這也是個劣勢,初學(xué)者可能太注重模式而很難解決實際需求。

前端不只是html、css這類。整個負責跟用戶交互的部分都是前端,包括處理程序。這類程序還是建議用php,主要原因就是開發(fā)迅速、從業(yè)人員廣泛。至于后端例如行為分析、銀行接口、異步消息處理等,隨便用什么程序,那個只能是根據(jù)不同業(yè)務(wù)需求來選擇不同語言了。

二、代碼版本管理
如果開發(fā)人員之間的網(wǎng)絡(luò)速度差不多,就SVN;比較分散例如跨國,就hg。大多數(shù)人還是svn的.

假設(shè)選了svn,那么有幾點考慮。一是采用什么樹結(jié)構(gòu)。初期可能只有一條主干,往后就需要建立分支,例如一條開發(fā)分支,一條上線分支,再往后,可能要每個小組一個分支。建議一開始人少時選擇兩條分支,開發(fā)和線上,每個功能本地測試無誤后提交到開發(fā)分支,最后統(tǒng)一測試,可以上線時合并到上線分支。如果喜歡把svn當做移動硬盤用,寫一點就commit一次也無所謂,就是合并的時候頭大一些,這些人可以自己建個分支甚至建立個本地代碼倉庫,隨便往自己的分支提交,測試完畢后再提交到開發(fā)分支上。

部署,可以手工部署也可以自動部署。手工部署相對簡單,一般是直接在服務(wù)器上svn update,或者找個新目錄svn checkout,再把web root給ln -s過去。應(yīng)用越復(fù)雜,部署越復(fù)雜,沒有什么統(tǒng)一標準,只要別再用ftp上傳那種形式就好,一是上傳時文件引用不一致錯誤率增加,二是很容易出現(xiàn)開發(fā)人員的版本跟線上版本不一致,導(dǎo)致本來想改個錯字結(jié)果變成回滾的杯具。如果有多臺服務(wù)器還是建議自動部署,更換代碼的機器從當前服務(wù)池中臨時撤出,更新完畢后再重新加入。

不管項目多小,養(yǎng)成使用版本管理的好習慣,最起碼還可以當做你的備份,我的http://zhiyi.us 雖然就是一個wordpress,可還是svn了,只改動一兩句css那也是勞動成果。

三、服務(wù)器硬件
別羨慕大客戶和有錢人,看看機房散戶區(qū),一臺服務(wù)器孤獨的支撐的網(wǎng)站數(shù)不清。如果資金稍微充足,建議至少三臺的標準配置,分別用作web處理、數(shù)據(jù)庫、備份。web服務(wù)器至少要8G內(nèi)存,雙sata raid1,如果經(jīng)濟稍微寬松,或靜態(tài)文件或圖片多,則15k sas raid1+0。數(shù)據(jù)庫至少16G內(nèi)存,15k sas raid 1+0。備份服務(wù)器最好跟數(shù)據(jù)庫服務(wù)器同等配置。硬件可以自己買品牌的底板,也就是機箱配主板和硬盤盒,CPU內(nèi)存硬盤都自己配,也可以上整套品牌,也可以兼容機。三臺機器,市場行情6、7萬也就配齊了。

web服務(wù)器可以既跑程序又當內(nèi)存緩存,數(shù)據(jù)庫服務(wù)器則只跑主數(shù)據(jù)庫(假如是MySQL的話),備份服務(wù)器干的活就相對多一些,web配置、緩存配置、數(shù)據(jù)庫配置都要跟前兩臺一致,這樣WEB和數(shù)據(jù)庫任意一臺出問題,把備份服務(wù)器換個ip就切換上去了。備份策略,可以drbd,可以rsync,或者其他的很多很多的開源備份方案可選擇。rsync最簡單,放cron里自己跑就行。備份和切換,建議多做測試,選最安全最適合業(yè)務(wù)的,并且盡可能異地備份。

四、機房
三種機房盡量不要選:聯(lián)通訪問特別慢的電信機房、電信訪問特別慢的聯(lián)通機房、電信聯(lián)通訪問特別慢的移動或鐵通機房。那網(wǎng)通機房呢?親,網(wǎng)通聯(lián)通N久以前合并改叫聯(lián)通了。多多尋找,實地參觀,多多測試,多方打探,北京、上海、廣州等各個主節(jié)點城市,還是有很多優(yōu)質(zhì)機房的,找個網(wǎng)絡(luò)質(zhì)量好,管理嚴格的機房,特別是管理要嚴格,千萬別網(wǎng)站無法訪問了,打個電話過去才知道別人維護時把你網(wǎng)線碰掉了,這比DOS都頭疼。自己扯了幾根光纖就稱為機房的,看您抗風險程度和心理素質(zhì)了。機房可以說是非常重要,直接關(guān)系到網(wǎng)站訪問速度,網(wǎng)站訪問速度直接關(guān)系到用戶體驗,我可以翻墻看風景,但買個網(wǎng)游vpn才能打開你這個還不怎么知名的網(wǎng)站就有難度了。或許您網(wǎng)站的ajax很出色,可是document怎么也不ready,一些代碼永遠絕緣于用戶。

五、架構(gòu)
初期架構(gòu)一般比較簡單,web負載均衡+數(shù)據(jù)庫主從+緩存+分布式存儲+隊列。大方向上也確實就這幾樣?xùn)|西,細節(jié)上也無數(shù)文章都重復(fù)過了,按照將來會有N多WEB,N多主從關(guān)系,N多緩存,N多xxx設(shè)計就行,基本方案都是現(xiàn)成的,只是您比其他人厲害之處就在于設(shè)計上考慮到緩存失效時的雪崩效應(yīng)、主從同步的數(shù)據(jù)一致性和時間差、隊列的穩(wěn)定性和失敗后的重試策略、文件存儲的效率和備份方式等等意外情況。緩存總有一天會失效,數(shù)據(jù)庫復(fù)制總有一天會斷掉,隊列總有一天會寫不進去,電源總有一天會燒壞。根據(jù)墨菲定律,如果不考慮這些,網(wǎng)站早晚會成為茶幾。

六、服務(wù)器軟件
Linux、nginx、php、mysql,幾乎是標配,我們除了看名字,還得選版本。Linux發(fā)行版眾多,只要沒特殊要求,就選個用的人最多的,社區(qū)最活躍的,配置最方便的,軟件包最全最新的,例如debian、ubuntu。至于RHEL之類的嘛,你用只能在RHEL上才能運行的軟件么?剩下的nginx、php、mysql、activemq、其他的等等,除非你改過這些軟件或你的程序真的不兼容新版本,否則盡量版本越新越好,版本新,意味著新特性增多、BUG減少、性能增加。總有些道聽途說的人跟你說老的版本穩(wěn)定。所謂穩(wěn)定,是相對于特殊業(yè)務(wù)來說的,而就一個php寫的網(wǎng)站,大多數(shù)人都沒改過任何服務(wù)器軟件源代碼,絕大多數(shù)情況是能平穩(wěn)的升級到新版本的。類似于jdk5到j(luò)dk6,python2到python3這類變動比較大的升級還是比較少見的。看看ChangeLog,看看升級說明,結(jié)合自己情況評估一下,越早升級越好,別人家都用php6寫程序了這邊還php4的逛游呢。優(yōu)秀的開源程序升級還是很負責任的,看好文檔,別怕。

以上這六點準備完畢,現(xiàn)在我們有了運行環(huán)境,有了基本架構(gòu)骨架,有了備份和切換方案,應(yīng)該開始著手設(shè)計開發(fā)方面的事情了。開發(fā)方面的事情無數(shù),下一篇會先說一些重點。

標簽:濟源 呼和浩特 辛集 葫蘆島 延邊 南平 保定 廣西

巨人網(wǎng)絡(luò)通訊聲明:本文標題《新網(wǎng)站初期需要注意的一些技術(shù)問題小結(jié)》,本文關(guān)鍵詞  新網(wǎng)站,新,網(wǎng)站,初期,需要,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《新網(wǎng)站初期需要注意的一些技術(shù)問題小結(jié)》相關(guān)的同類信息!
  • 本頁收集關(guān)于新網(wǎng)站初期需要注意的一些技術(shù)問題小結(jié)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章