gpt4 book ai didi

azure - 对特定 Azure 实例的 HTTP 请求

转载 作者:行者123 更新时间:2023-12-03 03:16:07 24 4
gpt4 key购买 nike

我有一个 Azure 辅助角色,它有一个/janitor 路由。此路由显示此实例的计数器和日志。当我使该角色具有两个或多个实例时,我无法控制要访问哪个实例。我的问题是:如何从公共(public) IP 可靠地访问角色的特定实例?

我知道 Instance Level Public Ip 。这不是我想要的,因为它需要一些额外的设置。

我想要做的事情类似于远程桌面客户端(mstsc.exe)所做的事情。我为每个单独的实例打开了一个远程桌面连接。我注意到它们都访问我的辅助角色的相同公共(public) IP 和端口,但不知何故,mstsc.exe 设法获得两个单独的屏幕,每个屏幕一个。 mstsc.exe 似乎在 TCP 级别复用两个服务器屏幕。这太奇特了,我不想走那么远。

我想要的只是向每个单独的实例发出 HTTP 请求。有什么办法可以做到这一点吗?例如。 HTTP header ,例如 X-Azure-Instance-Id=???。

最佳答案

RDP 的实现方式是在每个实例上都有一个 RemoteForwarderAgent.exe 和 RemoteAccessAgent.exe。 mstsc.exe 用于连接的 RDP 文件嵌入了一个 cookie,用于标识要连接的实例。当您启动 RDP 连接时,该连接将随机(通过负载均衡器)连接到任何实例,并将连接到 RemoteForwarderAgent.exe。 RemoteForwarderAgent 将读取 cookie,然后使用 InternalEndpoint 通过 RemoteAccessAgent 在内部与 cookie 中指定的实例建立连接。您可以为您的路线设置类似的内容,但我怀疑这比您实际需要的工作量更多。

最简单的选择是使用 InstanceInputEndpoint - http://msdn.microsoft.com/en-us/library/azure/hh180158.aspx 。这将允许您通过唯一的端口访问每个实例,因此要查询特定实例上的/janitor 路由,您可以向 http://myservice.cloudapp.net/janitor:81 发出请求。 (其中“81”是您要连接的特定实例的 InstanceInputEndpoint 端口)。这确实需要一些额外的设置(.csdef 中的额外行,以及客户端确定端口号的一些逻辑),但不像实例级公共(public) IP 那么多。

关于azure - 对特定 Azure 实例的 HTTP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26006662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com