遠振的台灣 VPS 主機&單日萬人網站使用經驗

有一個短期網站,為了能夠更方便的分工和控制預算,又是使用一個網站拆好幾個地方放的架構:
(A).資料庫和涉及使用者資料儲存與運算的程式功能,完全在另一台主機上,與前端 UI 站台之間透過 API 傳送和接收資訊。
(B).網站圖片跟靜態檔案的部分,放在另一個地方,還再包了一層 CDN 服務。
(C).前端 UI 站台只有一個 html 的皮跟大量的 js,還有呼叫 LINE Login 與其他 api 用的,組合資料與判斷參數的 php 程式。

雖然沒有掛負載平衡,當初想這樣設計,

  • 主要吃重跟數據儲存的地方都在(A),跑不動就擴充(A)的後端站台就好
  • 網站沒有需要圖片上傳之類的功能,完全不需要擔心流量/頻寬/磁碟空間之類的問題。如果用量剛好在 CDN 的優惠額度內,就省到賺到。使用者只會在台灣,不會在海外。
  • 如果多個(C)站台網站共用一個(A),資料庫多開一個欄位做活動區隔就好,搞不好以後有機會換個皮繼續用。(作夢,下次要用一定功能又大改)
  • 部分功能理論上可以直接 js fetch 呼叫,但是不想在瀏覽器 devtools 內暴露 (A) 的網址跟一些資訊,所以多包一層讓 (C) 的 server side 呼叫 (A)。
  • 數據跟運算都在(A),感覺(C)部分沒有什麼非常耗資源的功能,尋思著找個便宜的虛擬主機來放,應該是沒有問題的?

結果… 用壓力測試程式要能完全模擬真人在使用的情況,果然還是有點難度。上線後沒幾天,C部分的虛擬主機(共享主機)網站連線變得非常緩慢,負責交換資訊的 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 登入時卡住,或是覺得登入後有些資料沒顯示出來,按鈕點了沒反應,但管理者(自己)知道這嚴重了。

先死馬當活馬醫,把 C 部份處理資料的程式拆分放到無限空間、無限流量,大家都說好便宜好棒棒的 GoD*d*y 國外主機,還用免費版 Cloudflare 包起來,一開始可以連,但越變越慢,最後直接 500 ERROR 不給開啟,應該是聰明的主機商擋好擋滿了吧? 厲害的是 GoD*d*y 能限制僅單一程式鎖住,而不是整個站台都鎖起來,一段時間不連線之後又會恢復正常。

又試了另一間無限空間、無限流量的,是沒掛掉,不過程式執行時間長到超乎常人可以接受的範圍。所以不要迷信什麼無限空間、無限流量這回事,執行緒跟運算資源可沒有無限,高流量不知道會發生什麼事,但高併發的時候擋都擋不住。

還是得考慮 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 包含系統支援服務

VPS 比起 share hosting 少了一些限制,但效能如何還是看主機商如何分配系統資源。其他費用落差常常來自於有代管(Managed VPS Hosting)或自管的(Unmanaged VPS Hosting)的差異,以網站程式開發者的角度來說,我也只是伺服器設備的使用者,比較偏向找有代管服務的。

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

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

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

除了最低階的那個方案,VPS-S 以上的方案都是有附 WHM 跟 cPanel,我記得這個東西近幾年授權方式變貴了,還附軟體在裡面真是佛心,不像有些主機通常真的給一個空系統,不是很常搞 infra 的真的不會用,調那些 conf 就飽了。而且現在網路環境非常凶險,已經不是隨便裝個 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 元了。

VPS 貼錢動態升級

用了一段時間,使用者越來越多時,發現主機資源開始有點不夠用,尖峰時段 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),也不能跟裡面要放的網站用一樣的名字(WHM 規則),這名字不用設 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 ,透過這個連結去購買,我可以得到一些獎勵金。

其他國外 VPS 使用心得

文中提出了一些台灣 VPS 的特色,例如申請時需要紙本郵寄證件,租期最低1個月等等,還有一些秘密服務或細部規格需要透過客服申請,不能直接自己線上刷卡直接操作。

VPS 用了真的會上癮,以往其他間的超便宜的虛擬主機方案,常見的怪問題:

  • 只給一個東鎖西鎖的控制介面,有些功能就是要再加錢升級才能碰,但是升級後的規格大部分又用不到。
  • 客服只會丟跟問題毫不相關的文章給人看。
  • 號稱可以放多網站或各種附加服務,但是整個 name server 都要指過去。(例如 WHM 沒勾 Allow users to park subdomains of the server”s hostname)。
  • 就是要先改 DNS 的指向,才能從控制介面把網站加進去,才能進行網站會用到的主機端設定。不能先把東西通通設定好,最後再改 DNS 指向。(例如 WHM 沒勾 Allow remote domains)。
  • 號稱可以放多網站,但 SSL 只能裝給一個其中網站,就算是自己在別的地方買 SSL 證書,也要跟主機商額外加購位子,才能把 SSL 安裝上去。
  • 網站越來越卡,例如丟個全新安裝的空網站也一樣,不知道是超賣問題嚴重,還是同主機有個壞鄰居?

使用 VPS 或各種公有雲服務,可能花了更多錢,還要花更多時間管理,卻沒有那些用不到的附加服務,但買到了更多的自由,和真正的效能。

再補上一些國外 VPS 的使用比較,以下心得不是指同一家。

  • 租期最短可以到小時,有時候只是單純想測試一些東西時非常好用。
  • 有更多更細的規格可以選,看是要加強運算,不要跟別人共享 CPU,還是要超大 RAM,還是要更快的硬碟,都可以自己選。
  • 費用明顯比台灣便宜,不過畢竟台灣的 IDC 成本和頻寬成本就是比較高,沒什麼好說的。
  • 有時候剛好到某些地區的頻寬很低(不是中國境內),買了之後需要自己測或詢問客服,有的是需要請機房端去障礙排除,有的是某些方案以下就是頻寬超低,網頁上只有小到不能再小且抽象難懂的文字。
  • 申請時也不用上傳什麼證件,但聽說如果是公司申請會比較麻煩。而且也比較多莫名其妙被客服通知停機的案例。
  • 全世界的人都在用,所以網路上能找到的使用者心得,跟台灣的 VPS 不是一個量級的,但使用者心得有時後僅供參考,有時候看似服務好,因為人家的帳號在主機商是大戶。
  • 雖說最終 OS 都一樣,但中間某些設定難免有差異,即使不是 Managed VPS,有些主機商也會準備技術文件跟 FAQ。
  • 有些比較有名的國外廠商有為自家 VPS 提供管理 API,又有一些第三方管理工具可以經由 API 去管理 VPS。所以只是要查個 log 或監控某些東西,不用老是開電腦用 SSH 連上去看。
  • 網頁上價格可能看起來很低,點進去才寫備份或快照要另外收費,這我覺得還算合理,實際用起來會有一些意想不到的收費項目。
  • 有些號稱可以防 DDoS (但是只有防 L3, L4 的),或是有一些其他家都要收費才有的功能,各有各的特色。
分類: 網頁設計
留言:

近期熱門 Hot Posts