1. 程式人生 > 其它 >JMS微服務開發示例(十)把標準的web伺服器註冊到閘道器

JMS微服務開發示例(十)把標準的web伺服器註冊到閘道器

有這麼一個場景,有兩臺相同的web伺服器A和B,提供的服務一樣,但是伺服器ip不是固定的,經常變,這時候,就可以把兩臺伺服器都註冊到閘道器,通過瀏覽器訪問閘道器的url,會直接重定向到A或者B上(根據負載均衡分配)。這樣,哪怕在家裡用寬頻上網,家裡放個電腦,也能當web伺服器。

注意,閘道器程式需要最新版本的才支援。

下面是實現步驟:

1、新建一個web server程式

2、在ConfigureServices方法裡,初始化MicroServiceHost,並使用RegisterWebServer註冊為一個web服務

        MicroServiceHost msp;
        
public void ConfigureServices(IServiceCollection services) { msp = new MicroServiceHost(services); msp.RegisterWebServer("http://localhost:5000"); msp.Build(0, new NetAddress[] { new NetAddress("localhost", 8911) }) .Run(); services.AddRazorPages(); }

3、web服務啟動,成功連線閘道器

假設閘道器的ip是 127.0.0.1,埠是 8911,這時候,用瀏覽器訪問 http://127.0.0.1:8911/test.html ,瀏覽器會自動跳轉到 http://localhost:5000/test.html

通過js 訪問閘道器,獲取web伺服器地址

js 可以訪問http://127.0.0.1:8911/?GetServiceProvider={ServiceName:'WebServer'}

閘道器會返回

{"Port":0,"Host":"127.0.0.1","ServiceAddress":"http://localhost:5000"}