[建議] .Net Core 的雲端伺服器選擇

作者: kobe0834k (184.9)   2019-11-25 14:18:41
各位好
小弟為全職接案的軟體工程師
目前web專案中除了需要展示、測試
也有些客戶是連同伺服器架設、維護也委託我負責
之前在有限的時間內,在Azure、AWS、GCP當中抉擇
以定價來看GCP便宜非常多,所以就選定其作為多個專案的雲端伺服器
本人技術主要專攻.NET(微軟派),在微軟推出.Net core之後,
其跨平台的好處(不用再被IIS與Windows Server綁死)
讓我毫不猶豫就將所有ASP.NET專案轉投.Net Core懷抱
而.Net Core MVC的Web專案也是我目前主要的收入來源
在將這些專案部署上GCP的過程,自行摸索了一下,大概可以分成
1. 使用App Engine(GAE)
透過GAE的docker特性,部署完全是一件無需動腦的過程,非常輕鬆
但因.Net core專案部署到其上,只能設定為「flexible」類型的執行個體(另一種為
standard)
所以費用稍高,經一小段時間統計下來,1個GAE的.Net Core Web執行個體配上1個最低等
級的MySQL執行個體
平均一天下來的費用約台幣$150~$200之間,換算每個月平均約$4500~$6000之間
算是個不符成本的選擇
但因一些技術上的問題(下詳述)
以及快速方便盡快交件的時間壓力
目前本人的所有GCP專案都是以這模式運作中
(所以也才會有這篇請教的文章)
2. 使用Compute Engine(GCE)
原本一開始是打算在GCE上開Linux VM,
再自行設定、部署.Net Core Web與MySQL server
但卡在關鍵問題:.Net Core MVC的Session機制在GCE上常會出錯
也就是說「需要登入權限控管」的系統,常常登入後馬上就遺失Session
有查過國外的文獻與討論,簡易的排除方式不適用我的狀況
而另有神人提供相對複雜的解法,確實符合邏輯也應該可解決問題
但礙於時間壓力,便沒多花時間去嘗試
所以目前都使用GAE
不過就我目前所知,GCE相對GAE,是便宜不少的
作者: felaray (傲嬌魚)   2019-12-27 21:07:00
樓上 等級有差
作者: free112136 (Free)   2019-11-25 22:43:00
遺失session?聽起來很怪,而且session可以入storage,而且中的而且,是session遺失還是cookie遺失有確認了嗎?
作者: Klauhal (赤)   2019-12-18 10:29:00
固定費用就像VPS或VM提供商,但超出用量還是要加錢
作者: fatrabitree (胖兔子)   2019-12-27 02:40:00
Azure web+ azure sql database都沒你這麼貴Azure app service
作者: jinmin88 (晝伏夜出)   2018-03-30 01:22:00
session可以用redis代管啊而且你只有開一台的話 為啥session會遺失要搞lb+auto scaling大概都用api base + jwt了吧
作者: jobintan (Robin Artemstein)   2018-10-15 11:36:00
求主機穩定性先唄,不然主機down了,你的client一定會你找你發火的,錢的問題就以stablity為由算在client上唄。

Links booklink

Contact Us: admin [ a t ] ucptt.com