【问题标题】:Difference in ServiceManifest for owin hosted API controller vs regular stateless serviceowin 托管 API 控制器与常规无状态服务的 ServiceManifest 差异
【发布时间】:2016-10-01 16:59:00
【问题描述】:

当您使用 vs 2015 在 Service Fabric 中创建 owin 托管 API 控制器时,ServiceManifest.xml 文件(在 Resources/Endpoints 下)中会出现以下行:

<Endpoint Protocol="http" Name="ServiceEndpoint" Type="Input" Port="8726" />

但如果是常规的无状态服务,则在相关的ServiceManifest.xml文件中会出现以下行:

<Endpoint Name="ServiceEndpoint" />

既然两者都是底层的无状态服务,为什么端点定义不同?这意味着什么?另外,我将如何通过 http 传输调用第二个服务(来自第一个服务)?

谢谢。

【问题讨论】:

    标签: service azure-service-fabric stateless


    【解决方案1】:

    Web API 通常用作应用程序的网关,因此它需要一个固定端口,由负载均衡器映射到外部端口(与默认设置相反,Fabric 分配的随机端口)。

    此外,这可确保在 Windows 中正确注册 HTTP 端点,如 documentation 中所述:

    这一步很重要,因为服务宿主进程运行在 受限凭据(Windows 上的网络服务)。这意味着 您的服务将无权自行设置 HTTP 端点。 通过使用终结点配置,Service Fabric 知道要设置 服务将使用的 URL 的正确访问控制列表 (ACL) 听着。 Service Fabric 还提供了一个标准的配置位置 端点。

    【讨论】:

    • 你能回答问题的第二部分吗?如何通过 http 传输调用第二个服务(来自第一个服务)?
    • 如果您在不同的问题中提问会更好,请提供更多详细信息。分别是什么服务(第一,第二不够清楚)?
    • 感谢您的建议。我在这里发布了新问题:stackoverflow.com/questions/37617556/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-04
    • 1970-01-01
    • 2016-04-20
    • 2019-01-18
    • 2015-04-16
    相关资源
    最近更新 更多