当我按 F5 运行包含两个辅助角色和一个 Web 角色的 Azure 项目时。它会打开两个具有相同 URL 的窗口,而且它们也需要很长时间才能打开。
我所说的耗时,是指网站加载时间过长,但控制器中不会执行此类功能或代码。
任何机构都可以指导我吗?
当我按 F5 运行包含两个辅助角色和一个 Web 角色的 Azure 项目时。它会打开两个具有相同 URL 的窗口,而且它们也需要很长时间才能打开。
我所说的耗时,是指网站加载时间过长,但控制器中不会执行此类功能或代码。
任何机构都可以指导我吗?
尝试使用最新的 Azure SDK 版本 v1.4。使用以前版本的 SDK 在本地运行服务时存在一些性能问题。关于两个打开的窗口问题,这可能是因为计算和存储模拟器是在本地机器上手动启动的,而不是由 Visual Studio 启动的。至少在我的情况下,这是问题所在。关闭应用程序后,计算和存储模拟器并再次运行应用程序。(F5)一切都应该没问题。
启动 Azure 项目需要更多时间,仅仅是因为它做了更多的事情。对于初学者,每次按下 F5 时,它都会为每个角色创建和配置新的应用程序池,然后为每个角色实例创建和配置新网站。
我发现有时通过按 Ctrl+F5 来启动站点要快得多(即在不调试的情况下启动)。然后您可以手动附加到您的流程,但您可以自由地对许多文件进行修改,而无需重新部署角色。如果您修改不需要重建二进制文件的内容,这将特别有用。
对于您的其他问题,您可以使用角色属性的配置选项卡来控制如何为 HTTP 和 HTTPS 端点启动浏览器。只需取消选中您不希望在其上启动浏览器的端点。
我已经看到 Chrome 和 Firefox 发生了这种情况。IE不会发生这种情况。抱歉,我无法解释“为什么”。
我以前也看到过这种情况。
但是,有一种方法可以解决它。您可以为您的 Web 角色编辑 ServiceConfiguration.cscfg 并将实例计数设置为 0。然后将您的实际 Web 应用程序设置为启动项目,而不是 Azure Web 角色。这将允许您使用 Cassini / IIS Express 而不是 Compute Emulator 来开发您的 Web 应用程序。
注意:当您进行部署时,您必须将实例计数设置为大于一的值。
<ServiceConfiguration serviceName="Web" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="2" osVersion="*">
<Role name="WebRole1">
<Instances count="0" />
<ConfigurationSettings>
<Setting name="LogLevel" value="Error" />
</ConfigurationSettings>
</Role>
</ServiceConfiguration>
另请注意:当像这样运行您的网站时,您将无法测试某些功能。一个例子是本地存储。如果您在应用程序中使用类似的功能,您可以简单地将配置和启动项目切换回来。
当您按 F5 调试您的应用程序时,您还会注意到速度大幅提高。