Amazon-Web-Services
雲主機的基本理解(例如AWS EC2)
,大家好你們好。目前,我正在尋找一種託管我的 MERN Stack 應用程序的好方法,並發現通過 AWS 進行雲託管將是一個很好的解決方案。在繼續之前,我想澄清一些了解雲託管如何工作的問題。
我所了解的是,雲託管基於在 AWS 系統中某處執行的實例。如果我想提高託管應用程序的性能,我可以添加另一個實例,以便為我的應用程序執行兩個實例。
- 當使用者打開我的網站時,我的兩個實例之間的流量如何分配?通常我的域會連結到一個實例的 IP 地址,但另一個實例不會無法訪問嗎?
- 我的數據庫將分別在每個實例上執行,對嗎?我怎樣才能讓所有其他實例都使用一個數據庫?
提前致謝!我很感激任何幫助😄
根據您的問題,我認為您不應該設置任何 AWS。AWS 和其他雲服務是非常強大的企業級系統,但它們也非常複雜。AWS 專業人士通常會研究 AWS 數百小時,並在該領域工作多年才能精通它。如果你把東西放在 AWS、Azure、Google 上,你就會在啟動、擴展和保護它方面遇到問題。
我建議你找一個服務商,或者至少請人為你做,否則你會發現你現在或將來有問題。
不過,要回答您的問題:
- 您的軟體在 EC2 實例(虛擬機)上執行。您可以指定它們的數量、大小和執行位置。最簡單的選擇是購買一台更大的機器,但更好的選擇是使用負載均衡器並橫向擴展,這意味著如果系統不忙,實例將被刪除並且您無需為它們付費。
- 像 ALB 這樣的負載均衡器在實例之間拆分流量。我認為這是在“最少連接”上完成的,但那裡有一些靈活性,我認為您可以根據響應時間進行負載平衡。好久沒看這個細節了。
- 您可以使用 AWS Relational Database Service,您可以擁有一台專用於執行數據庫的主機,或者一個 VM 可以執行一個數據庫,而其他實例可以連接到它。在許多情況下,RDS 是最佳選擇。