[英]Setup Server with same instance and different address
我想分別開發我的應用程序(API,JOBS,WEB),以使其保持這種狀態:
我知道如何使用Amazon和GoogleComputing的不同實例來執行此操作,但是,我想知道IF是否可以設置單個實例來完成所有操作,並且每個DNS命名空間都可以轉到該計算機上的不同端口,例如:
另外,如果可能的話,我也不知道應該在哪里進行配置(是在DNS中,還是在Amazon / Google實例中的特定設置中?)
您為什么要他們去另一個港口? 它當然沒有必要。 您可以使用DNS將所有這些域/子域指向單個服務器/ ip地址,然后通過您的Web服務器配置將各種子域名綁定到該服務器上的每個特定網站。
在IIS中,您可以綁定IIS管理器工具,而apache具有類似的功能:
聽起來您正在尋找的是HTTP 反向代理 。 這將是您機器上的Web服務器,該服務器綁定到端口80,並根據傳入的Host:
標頭(或其他條件)將請求轉發到適當的Node.js實例,每個實例都綁定到一個(不同的)自己的港口。
有幾種選擇。 馬上想到的一對是HAProxy和Nginx。
DNS無法用於控制請求到達的端口。
另一種方法(可以說)是非常規的,但盡管如此,它仍然可以工作,它是建立3個CloudFront發行版,每個主機名一個。 每個分發將請求轉發到“原始服務器”(您的服務器),並且可以為每個服務器指定目標端口。 由於CloudFront主要旨在用作緩存服務,因此您需要從Node返回Cache-Control:
標頭以在適當的時候禁用該緩存...,但是您還可以看到響應上的一些性能改進,可以允許CloudFront為您緩存。
您正在尋找的是負載平衡器(如果是Amazon,則為ELB)。
設置負載均衡器以將流量發送到不同的端口,並在DNS級別上為您的服務設置CNAMES,以指向您擁有的3個負載均衡器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.