Azure 将OWIN自托管服务结构应用程序部署到云后的终结点

Azure 将OWIN自托管服务结构应用程序部署到云后的终结点,azure,azure-service-fabric,Azure,Azure Service Fabric,我能够在本地运行描述的示例OWIN自托管服务结构应用程序,并将对localhost的HTTP请求作为XML文件查看结果。但是,当我将应用程序发布到云中的服务结构时,如何发出相同的请求?我的Service Fabric的端点作为[Fabric name].westus.cloudapp.azure.com:19000提供给我,所以我尝试了[Fabric name].westus.cloudapp.azure.com:19000/api/values,但它给了我一个乱七八糟的下载文件,我希望在这里得

我能够在本地运行描述的示例OWIN自托管服务结构应用程序,并将对localhost的HTTP请求作为XML文件查看结果。但是,当我将应用程序发布到云中的服务结构时,如何发出相同的请求?我的Service Fabric的端点作为[Fabric name].westus.cloudapp.azure.com:19000提供给我,所以我尝试了[Fabric name].westus.cloudapp.azure.com:19000/api/values,但它给了我一个乱七八糟的下载文件,我希望在这里得到与以前相同的XML文件。local ServiceManifest.xml文件提供了一个8760端口,这是我用于localhost的端口,但在云上也不起作用,而且我在云中看到的清单中没有列出任何端口。

听起来您需要在负载平衡器中打开端口8760。转到Azure portal,找到负载平衡器设置,然后打开端口。然后,您可以通过[fabric name].westus.cloudapp.azure.com:8760/api/values进行访问。

创建服务结构群集时,是否为OWIN端点指定了自定义端口号?在您的情况下,这将是8760:

Service Fabric允许您使用上述+在ServiceManifest.xml端点定义中指定该端口,或者如果未指定端口,则将从SF应用程序的可用端口号范围内为您的端点指定一个自定义端口:


端口19000是管理工具使用的二进制协议。正如其他人在这里所说的,您缺少的是通过Azure负载平衡器公开打开服务的端口(在您的情况下为8760),必须在您希望服务运行的每个节点上将其配置为自定义端口。Azure负载平衡器将把外部流量路由到每个指定了自定义端口的节点,因此您还必须确保您的服务正在这些节点上运行。您可以通过使用“-1”作为服务实例计数来实现这一点。

如果您当前无法在负载平衡器中添加端口,则必须销毁群集并重新启动。我一直在寻找服务实例计数中-1的含义。你能给我指一下文件上写着-1表示你的服务将在所有实例计数上运行吗?这对我会很有帮助的,谢谢!这里有记录: