与本地主机上的内部反向代理的 Intra ServiceFabric 通信

Intra ServiceFabric communication with internal reverse proxy on localhost

我有一个带有两个应用程序的 ServiceFabric。从 ServiceFabric 外部调用应用程序,然后向 ServiceFabric 内部的其他应用程序发出 HTTP get 请求。

我的第一次尝试是使用 ServiceFabric 的反向代理 IP 来寻址第二个应用程序,与第一个应用程序的寻址相同:

http://10.0.0.1:19081/App2/App2.Service/

这导致 ServiceFabric 内部的通信不可靠,第一个请求总是失败,而第二个请求大部分成功。

然后我在 https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-reverseproxy 上阅读了有关内部 ServiceFabric 通信的信息。现在我用 localhost 处理我的第二个应用程序,它似乎按预期工作:

http://localhost:19081/App2/App2.Service/

唯一悬而未决的问题是:使用本地主机寻址 ServiceFabric 内部的应用程序是否仅能工作,因为该应用程序也在同一节点上 运行ning?还是它起作用是因为存在真正的反向代理行为,即使应用程序不在同一节点上 运行,请求仍然会到达它?

reverse proxy runs on all nodes,因此可以随时在本地主机上访问它。它将您的呼叫转接至自动解析的第二项服务。

您还可以使用内置的 DNS 服务来解析内部服务。这样,您可以节省一些反向代理的开销。 与使用 ip 地址相反,您不需要知道服务 运行s 在本地主机上还是在不同的节点上。此外,如果您的服务在 运行 时移动,您也不会遇到麻烦。