有一個短期網站,為了能夠更方便的分工和控制預算,又是使用一個網站拆好幾個地方放的架構:
1.資料庫和涉及使用者資料儲存與運算的程式功能,完全在另一台主機上,與前端 UI 站台之間透過 API 傳送和接收資訊。
2.網站圖片跟靜態檔案的部分放在另一個地方,前面包一層 AWS 的 CDN 服務,幸好沒有圖片上傳之類大量消耗 IO 和磁碟空間的功能,應該不需要擔心流量/頻寬/磁碟空間的問題。
3.前端 UI 站台只有一個 html 的皮跟大量的 js,還有呼叫 LINE Login 與其他 api 用的組合與解析參數的 php 程式。部分功能理論上可以做成 client 端 js fetch 呼叫,但是不想在瀏覽器 devtools 內暴露網址跟一些資訊,所以多包一層在 server side 呼叫。

雖然沒有掛負載平衡,理論上這樣設計,後端站台跑不動就擴充後端站台,可以 N 個前端 UI 站台網站共用一個後端站台,以後有機會換個皮繼續用(作夢,下次要用一定功能又大改),既然數據跟運算都在別的地方,第 3 部分本身沒有什麼非常耗資源的功能,找個便宜的虛擬主機來放,應該是沒有問題的?

結果… 用壓力測試程式要能完全模擬真人在使用的情況,果然還是有點難度,上線後沒幾天,第 3 部分的網站連線變得非常緩慢,負責交換資訊的 php 程式出現 508 Resource Limit is Reached Error。到控制介面一看是 Entry Processes 用量爆了。

Entry Processes 是什麼? 網路上似乎也沒找到怎麼評估網站會有多少 Entry Processes,程式只有一支,肯定不是主機執行16支程式,或同時超過 16 個人在用網站,不知道跟 Apache Status 介面中的 XXX requests currently being processed 是不是同一個東西? 反正也是便宜的主機經常會限制的技術規格之一。

但是因為 UI 是 static html,CSS 和 JS 等靜態檔案也都正常,所以網站不會直接跑出一些奇怪的工程錯誤畫面讓人截圖PO上網研究,使用者頂多在 LINE 登入時卡住,或是覺得登入後有些資料沒顯示出來,按鈕點了沒反應,但管理者(自己)知道這嚴重了。

先死馬當活馬醫,把小部分程式放到無限空間、無限流量,大家都說好便宜好棒棒的 GoD*d*y 國外主機,還用免費版 Cloudflare 包起來,一開始可以連,但越變越慢,最後直接 500 ERROR 不給開啟,應該是聰明的主機商擋好擋滿了吧? 厲害的是這個能限制到單一程式,而不是整個站台都鎖起來,一段時間不連線之後又會恢復正常。
又試了另一間無限空間、無限流量的,是沒掛掉,不過程式執行時間長到超乎常人可以接受的範圍,不要迷信什麼無限空間、無限流量這回事,執行緒跟運算資源可沒有無限,高流量不知道會發生什麼事,但高併發的時候擋都擋不住。

還是得考慮 VPS 主機

跟主機商技術人員討論,前端 UI 站台的 Entry Processes 已經跑到好幾百,由於虛擬主機操作權限有限制,碰到執行程序超過、卡住當掉的也辦法自己砍掉,勢必要考慮更高級的方案。

看到了遠振的台灣 VPS 方案,在不會有什麼 worker/entry processes 的限制下,甚至還有一個月 NT$990 的,應該是最便宜的選擇,不然就要考慮更高階的雲端或公有雲代管方案,還需要更專業的網路應用知識。

一個月1000多塊台幣的方案,規格是
– SSD 磁碟空間:50 GB
– 每月流量:2TB
– CPU:2 核心
– 記憶體:4 GB

網頁上還有列其他特點

  • 機房位置:遠傳速博 (ISO-27001 認證) BGP 最佳化路由,直接 Peering HiNet 中華電信,不經第三方 ISP
  • 免費 Hybird 內網:VPS/雲端主機/實體主機皆可透過高速內網互連,真正做到混和雲的網路架構
  • 免費贈送 FTP 備份空間
  • VPS-S以上方案免費贈送 WHM/cPanel(Linux 適用)或 Windows OS 授權
  • 自行重灌 OS:可自行套用 OS 範本,快速自動重灌完畢 ( CentOS、Ubuntu、Fedora、Debian、Opensuse)
  • MRTG 流量圖
  • Console/VNC
  • 線上重開機
  • 支援從 VMWare 虛擬機(檔案格式 .vmdk)轉換至 VPS。另外網路上還有看到在遠振 VPS 上跑 docker 的教學。

這個價位和規格,比較其他間機房在台灣的 VPS

  1. 捕X網 : 同規格價位差不多,但給的流量更少,沒有附一些傻瓜軟體,代管服務費又是內洽。
  2. X邦: VPS 還有限網站數量,月租費用不知道多少,還要內洽。
  3. X國策: 貴了幾百塊,看起來規格還行,有附 Plesk 跟一些有的沒的服務,但是問題排除服務費用是2000元/每小時。
  4. 匯X: 有附 Plesk & 管理服務,但記憶體 4 GB的方案一季要 NT$27000,CPU 規格不明,我也沒有要用到一季,先不考慮。
  5. SxxxxxZoo: 產品名稱搞得很炫砲,但本質還是差不多那些東西,半專屬活動主機 NT$8820/月,Entry Processes 只有給 180,照之前的經驗是不太夠用。VPS 最低方案的 2Cores/8GB RAM 只要 NT$1499,不過傻瓜軟體通通另外要另購,而且皆需自行管理。

遠振 VPS 當天可開通

從購買完成付款->填寫相關系統與環境需求單->主機商的技術人員備機(安裝作業系統與軟體環境設定)->檢測網站在新主機上功能運作是否正常->遇到問題諮詢主機商技術人員,大約10個小時過去了,比較順暢的網站終於又回來了。


雖然程式複雜度和功能不同,有些東西不能一起比較,但是 TTFB 比起一些動輒幾百毫秒或超過1秒的國外主機應該是快多了。

系統支援服務

VPS 比起 share hosting 少了一點限制,但效能如何還是看主機商如何分配系統資源。其他費用落差常常來自於有代管(Managed VPS Hosting)或自管的(Unmanaged VPS Hosting)的差異,我不是專精 infra /硬體/網路通訊協定的,所以嚴格來講我也只是伺服器設備的使用者,比較偏向找有代管服務的。

現在是全球化競爭的時代,買國外的通常更便宜,但溝通成本跟磨合情況就不得而知,遠振台灣 VPS 原則上是要自管的,但可以加購系統支援服務,一個月不到五千台幣,有一組 Red Hat 認證的專屬工程團隊 24 小時幫我服務。

遠振的機房在台灣,不用每次寄信都要 Hello….regards,也不需要用大陸或香港用語,也沒有問個問題要幾個窗口轉來轉去、一再複述問題的情況,客服都能很快解決我的需求。

購買繳費後馬上就會收到一個基本的 VPS 視覺化控制介面,系統可以自己灌,也可以填寫系統與環境需求單請技術人員服務,選擇要裝 Ubuntu 還是哪種 Linux 系統,PHP 版本之類的。

除了最低階的那個方案,VPS-S 以上的方案都是有附 WHM 跟 cPanel,我記得這個東西近幾年授權方式變貴了,還附軟體在裡面真是佛心,不像有些主機通常真的給一個空系統,不是搞 infra 的真的不會用,現在網路環境非常凶險,已經不是隨便裝個 WAMP 就敢把網站放在網路上裸奔的年代了。
其他更細的資訊,像系統資源用量、控制細項可以從 WHM 跟 cPanel 軟體裡視覺化操作,不過因為權限變高,諸多設定還是跟平常用的 cPanel 不太一樣,遇到一些 php function 不能用或機器連不上各種疑難雜症,也可以請機房人員協助處理。

比較了一些其他公有雲的支援方案費用和服務程度,
1.Google 的 Google Cloud Customer Care,月費 29 美元+3% 帳單費用,只有針對優先等級2(P2)案件4小時初步回應時間,再上一級的是 USD$500/月。
2.AWS 的 Support plans ,月費 29 美元或3% 帳單費用,只能在 12 小時內回覆技術問題,再上一級的是 USD$100/月。
3.Azure 的 Support plans,月費 29 美元是平日上班時間8小時內回應,再上一級是 USD$100/月。
基本上如果想要幾分鐘內就可以解決問題,月費肯定是不只台幣 4000 元了。

貼錢動態升級

用了一段時間,使用者越來越多時,發現主機資源開始有點不夠用,尖峰時段 CPU 常常滿載,其中一天甚至需要清掉處理程序或重開機治百病。照 GA4 的算法每天差不多也只有一萬多人,用主機系統的算法就更多了(包含bot, 沒裝 blocker 的使用者之類的)。

傳統那種圖片+資料庫+程式一大包放在同一站台,碰到高流量高併發的各種耗資源也就算了,這次只是跑個 LINE 登入,還有使用 php session 和傳送和接收一些其他 API 資料的程式,想不到也是挺耗資源的。

結果原來 VPS 服務還有隱藏功能,就是每個方案還有貼錢升級的額度,CPU、RAM、硬碟空間、流量都是可以單獨分開升級的,這種升級也不用花時間重新備機和移機和測試,只要安排個時間重開機就好。

像這次的網站架構不需要大磁碟空間和大流量,我的 VPS-S 方案標配是 2 Core CPU+4GB RAM,貼一點錢最高可以加到 8 Core CPU+16GB RAM,而不用為了 CPU 和 RAM 就升到一個月快1萬元的其他高階方案,花錢買一堆用不到的磁碟空間和流量額度。

費用的話,可以直接在線上購買頁點選項看價錢,不滿一個月的話大致按比例計價,繳了 100 多塊台幣,升上 4 Cores CPU+8GB RAM,輕鬆解決燃眉之急。

不過這個升級服務是要請帳務部門開帳單,線上繳費之後由技術人員從機房那邊調整,無法像一些小時計價的國外VPS/雲端主機那麼有彈性,無法自己手動控制每天幾點升級、每週末升級之類的,autoscale 當然也是沒有的。

其他

除了有貼錢升級這個緊急密技,還有其他在官方介紹網頁上看不出來的…

  1. VPS 時要設定一個 hostname,申請資訊上只寫說不得為 www 開頭,也不得為空,但還有很多隱藏規則,像必須要是子域名(不能用 123.com),也不能跟裡面要放的網站用一樣的名字(cpanel規則),這名字不用設 DNS 指向也沒關係,但就是可能會造成多餘的信件往返。
  2. 申請時可以線上申請,繳費後很快就能拿到機器,幾小時內就可以開始佈署網站程式。但仍然需要把相關文件印出來簽名寄回去,才算完成正式手續。申請時寄一次,到期退租時還要再寄一次,寄掛號的話郵資也不少。
  3. 遠振主要會分兩個窗口,一個負責帳務,一個負責技術,技術人員應該是24小時的,半夜3、4點寄信也會回(親身經驗),而且常常回信往返的都是不同署名,看起來工作交接很透明化,應該不是那種一條龍顧所有客戶的。
    負責帳務的是正常國定假日休假、上下班時間比較正常,所以如果在晚上、凌晨或週末假日遇到跟錢有關的事,例如要先繳費買XX,技術人員才會處理,或是週末假日要加購某些東西,要等帳務人員開繳費單的,如非情況緊急,通常需要等帳務人員上班時才能處理。
  4. VPS 租期最短是一個月,而且是切齊月底制,例如租一個月,不管幾號開始租,到期日就是到月底而已。所以如果說如果活動是從1號到月底,但前一個月要提前幾天佈署程式與測試,然後活動結束後隔月前一兩天要撈系統 log,基本上要付3個月的費用。
  5. VPS 比起一般虛擬主機更高階一點點,那有保 SLA 一年幾個 9 嗎? 合約裡有寫一年可以中斷的時數,斷48小時算一算大約是 99.45% 左右。不保 DDoS,也算合理。至少使用時剛好都沒碰到嚴重中斷事故就是了。

現在是全球化競爭的時代,但有些東西出於某些考量,還是只能用本土的,像網站如果沒有非要一定放在台灣,那選擇可就更多了。如果是完全不同的系統架構,那設備的選擇點又不同了。

文章最後附上推薦連結 https://twnoc.net/whmcs/aff.php?aff=1476 ,透過這個連結去購買,我可以得到一些獎勵金。