gpt4 book ai didi

Azure SDK 1.8 将多个 Web 角色绑定(bind)到本地模拟器上的同一端口

转载 作者:行者123 更新时间:2023-12-02 08:30:05 25 4
gpt4 key购买 nike

将 azure SDK 更新到 1.8 后,我无法再正常运行我们的项目。看起来本地模拟器使用相同的端口号以错误的方式创建 IIS 应用程序。如果我只是创建一个包含 5 个 Web 角色的新云项目,然后在 Azure 项目属性中设置“使用 IIS Web 服务器”,则可以重现该问题 Azure project properties

运行应用程序后,IIS 显示大多数应用程序已停止,因为同一端口已在使用中。它们都使用 8085 端口,必须仅分配给最后一个应用程序

enter image description here

enter image description here

向 Microsoft 报告的错误: http://connect.microsoft.com/VisualStudio/feedback/details/773786/azure-sdk-1-8-binds-several-web-roles-to-the-same-port-on-local-emulator#details

默认的 Visual Studio 服务配置不适用于 SDK 1.8

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="WindowsAzure1" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2012-10.1.8">
<WebRole name="WebRole1" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="Endpoint1" protocol="http" port="80" />
</Endpoints>
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
<WebRole name="WebRole2" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="Endpoint1" protocol="http" port="8080" />
</Endpoints>
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
<WebRole name="WebRole3" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="Endpoint1" protocol="http" port="8081" />
</Endpoints>
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
<WebRole name="WebRole4" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="Endpoint1" protocol="http" port="8082" />
</Endpoints>
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
<WebRole name="WebRole5" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="Endpoint1" protocol="http" port="8083" />
</Endpoints>
<Imports>
<Import moduleName="Diagnostics" />
</Imports>
</WebRole>
</ServiceDefinition>

最佳答案

同样的问题已发布在这里: Only one instance works with Azure October 2012 SDK on IIS7.5

我使用相同的设置遇到了这个问题,尝试了所有合乎逻辑的解决方案,搜索了网络......什么也没有。我不明白怎么会这样。同一项目在旧版本的 Azure 模拟器上运行良好。谢谢女士。

<小时/>

更新:我按照此处建议的注册表破解解决了我的问题:

Strange behavior of Windows Azure Compute Emulator (SDK 1.8) with multiple role instances on a clean machine with VS2012 but WITHOUT VS2010

问题似乎是模拟器混淆了 VS2010 与 VS2012 的选择设置。就我而言,我安装了 2010 和 2012,但即使仅全新安装 2012,它似乎也会影响您。

Microsoft.WindowsAzure.Common.Workarounds.TryGetVS2010SPVersion(仅名称)看起来像是一个 hack,需要额外的 reg hack 来修复它。再次感谢女士。 :)

任何遇到此问题的人,请提交此连接错误以供 MS 修复: https://connect.microsoft.com/VisualStudio/feedback/details/773786/azure-sdk-1-8-binds-several-web-roles-to-the-same-port-on-local-emulator

关于Azure SDK 1.8 将多个 Web 角色绑定(bind)到本地模拟器上的同一端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13761628/

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