【问题标题】:How to make two microservices listen on same port in azure service fabric如何让两个微服务在 Azure 服务结构中的同一端口上侦听
【发布时间】:2017-11-10 03:03:15
【问题描述】:

我创建了一个包含两个微服务的项目,并希望它们都监听同一个端口。 我有两个单独的 ServiceManifest 文件,我在其中为它们定义了相同的端点,但是当我在本地或远程部署它时它不起作用。

当我在本地部署它时,它显示以下异常: 抛出异常:mscorlib.dll 中的“System.Reflection.TargetInvocationException”

【问题讨论】:

    标签: azure visual-studio-2015 port microservices azure-service-fabric


    【解决方案1】:

    根据您使用的通信堆栈,您有几个选项。

    如果基于 HTTP 的 Web API - 您可以为服务使用反向代理和动态端口分配:https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-reverseproxy

    如果使用服务远程处理 - 只需使用动态端口。

    对于集群的外部通信 - taka 看这里:https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-reverseproxy#special-handling-for-port-sharing-services

    【讨论】:

      【解决方案2】:

      在两个微服务的 ServiceManifest.xml 文件中保持“端口号相同”。

      只需为不同的服务设置不同的网址

      对于 Ex localhost:8100/service1/....
      本地主机:8100/service2/....

      “不同的appRoot对应不同的服务”

      【讨论】:

      猜你喜欢
      • 2016-11-19
      • 1970-01-01
      • 2011-05-20
      • 2019-01-03
      • 1970-01-01
      • 1970-01-01
      • 2011-01-05
      • 2015-09-23
      • 2020-11-25
      相关资源
      最近更新 更多