Windows
如何處理文件下載請求量
我們有一個
Windows 2016 Server
用作下載伺服器的 VPS。使用者請求帶有 URL 的文件並從中下載。我使用 asp.net 作為 web 應用程序和 IIS 作為 web 伺服器。現在從開始2年後,下載請求的數量增加了,我擔心一台伺服器可能無法同時處理所有請求。
現在我想將伺服器數量增加到 3 個或更多,但我不知道如何處理對該伺服器的負載平衡和容錯的請求。
經過一些研究,我發現
Apache Hadoop
這可以幫助我達到這個目的。它是否為我的問題寫了選擇?什麼技術現在使用中型(不是 GoogleDrive 或 DropBox)公司?
如果您只需要沒有容錯和會話親和性的簡單且免費的負載平衡,那麼 2 或 3 台下載伺服器上的DNS 循環將是一個合適的解決方案
實現起來也很簡單,因為您只需要添加一個額外的 DNS 條目 ‘www.mydomain.com’ 指向第二個伺服器 IP 地址
主要缺點:
- 無容錯:它不檢測其中一台伺服器是否不可用
- 沒有會話親和性:客戶端可以在瀏覽期間從一個伺服器切換到另一個伺服器(快速瀏覽,下載伺服器沒有問題)
- 當您對 DNS 配置進行更改時,您有公共 DNS 複製延遲(但您可以通過 DNS 條目上的小 TTL 值來限制這一點)
反之,如果你需要容錯,有像HAProxy這樣的負載均衡解決方案,可以在 TCP 和 HTTP 級別做負載均衡。您可以將其安裝在專用於該角色的伺服器上
您還擁有 DNS 流量管理器(如 Azure DNS 或 F5 GTM),它可以監控每個伺服器的可用性。但是它們的成本很高,並且更適合於大型地理分佈的應用程序(在不同的國家/世界地區)