接觸了不少專案,自己也測試、架設過幾個網站/系統,對於「網站主機放在哪」這回事,有了一點心得。網站要能運作,總要有個地方放置網站程式碼,而且大部份還會需要可以連接資料庫,針對各種不同的專案需求,與各種不同的公司背景,個人概略有一些想法與䢖議:
當持續營運重於預算需求
首先,當公司的預算寬裕,且對網站持續服務的要求較高時,個人首推Amazon EC2!
這裏提到的持續服務,指的是專案要求網站必須全年365天,每天24小時營運都不間斷;這類的網站通常是提供後端服務、API,或是有相當流量的網站、電子商務…等。當這類的網站服務中斷時,輕者會造成交易失敗、客訴,重者商譽受損、消費者喪失信心,因此對持續運作的要求非常嚴格。
Amazon EC2具有彈性良好、可依需要加開、關閉租用伺服器數量、高效能的網路服務,與提供多種服務(如CDN、VPC、Load balance…)等優勢,最大的問題,只有–它很貴;有多貴?這個問題就要視專案的實際使用量而定了。Amazon是依使用量計價的,包括http request次數、儲存空間使用量…等,都是各別計費的;以最低效能的伺服器來說,即使不計算其它使用量,光伺服器的租用,每月就要約15美金;換成效能好一點、頻寬大一點的主機,月租就要38美金了…;若對Amazon的計費方式有興趣,可以從以下連結試算看看。
Amazon目前有提供免費方案,可以安裝最低效能的伺服器,一年之內可以免費使用。個人覺得,作為一個網站工程師,最好可以申請個帳號來試玩看看。
一般的網站/App專案
在一般的網站專案裏,對伺服器持續營運的需求並不會太嚴謹,偶爾斷線個幾十分鐘、一小時無所謂,甚至也沒人會發現;這類的專案通常是中小企業的需求,預算對客戶來說是很重要的因素,此時,一些較平價的雲端主機就會是個不錯的選擇了。
台灣現在已有不少雲端主機商,如捕夢網、戰國策…等;這類的雲端主機商可依需求,選擇租用SAAS或SAAP的平台,也因此,價格也就更親民了。相對地,這類的主機在可用性的要求上並不是那麼嚴謹的,安全性也不見得有那麼高,個人在處理一些專案時,就發生過多次服務出問題的狀況;這些問題就不多提了,畢竟要省錢,自然其它的風險就必須多承擔一些…。
小型專案/形象官網
更小一點的公司網站需求,可能只是個形象官網,平時流量極低,這樣的專案對伺服器的要求極低,幾乎到了「只要它會動就行了」的地步;這類的專案只要客戶同意,其實只要在公司內部架設一台電腦或主機,建立虚擬伺服器即可;或是在既有的雲端主機上,設定虚擬伺服器即可;在預算極為受限的情形下,另外申請、購買雲端主機就是多餘的了。
個人網站
如果只是想架個自己的網站(就像本站),「免費」通常是首選!免費的雲端服務很多,個人較推薦的雲端主機有:
- 前面提到的 Amazon EC2免費方案
- Redhat推出的 Openshift
除了免費的雲端平台以外,還可以用自己的電腦,安裝VirtualBox或VM等虚擬伺服器,24小時不關機,一樣是個簡易的網站主機;此外,買一台網路磁碟機(NAS),大多也有提供網頁服務的功能;以本站來說,就是用QNAP TS-212來架的站,上面架了6、7個虚擬主機,加上CDN服務後,跑起來一樣嚇嚇叫!
寫完了,有想要擁有屬於自己的網站了嗎?