2010-06-07 103 views
4

我已经开始将现有的ASP.NET Web应用程序移植到Windows Azure,并且注意到开发过程非常慢。每次我对代码进行更改并想查看代码时,我都必须将其有效地重新部署到本地dev云(使用Start debugging(F5)或Start without debugging(Ctrl-F5))。时间Visual Studio是完全没有反应Windows Azure本地开发环境速度

难道我做错了什么,或者简单地事情是如何对Azure的开发

我的规格:?

  • Visual Studio 2008中9.0.30729.1 SP
  • 在.NET 3.5 SP1上运行的5个项目
  • Azure的SDK 1.1(2010年2月)
  • 的一个Web角色
  • 双核AMD 64机8GB RAM单实例,64位Windows 7,完全修补
  • 主要项目本身是相当大的(3k文件,约200k行),但通常在10-15秒内编译

回答

2

如果您的Web角色功能有限,则可以将Web项目设置为VS解决方案中的活动项目并从此处运行。

例如,我的web角色不会调用表存储,blob存储等等......它只是产生一些Azure日志记录调用并与SQL Azure交互。所以有时我只是将Web项目设置为VS调试器中的启动项目,而不是Azure,然后从那里运行。我已经正确编写了日志记录调用,以检查Azure在写入之前是否可用,所以在这种情况下它们不会执行。

当然,如果你用表存储,队列,斑点等做很多事情,那么这不适合你。

1

通常在开发机器中我们只编译和运行解决方案。对于Azure开发,还有一个额外的步骤,其中特定项目部署在开发结构中,其中涉及将完整网站内容复制到动态创建的部署文件夹。由于您拥有大量文件,因此每次按F5或Ctrl-F5时都需要将所有这些文件复制到新文件夹中。这可能会导致您注意到的延迟。

这种情况也突出了在应用结构上部署解决方案的不灵活性。无论何时您更改网站中的任何内容(静态或动态),整个站点都必须打包并重新上传到生产服务器上。

+0

这很烦人。人们用比我的项目大得多的项目来做什么?我想知道Web角色是否可以在Cassini上运行,因为表存储只是oData。一旦我对Azure有了更多的经验,我会尝试一下。 – 2010-06-08 18:34:15

+0

是的。我已经看到Cloud9的Azure网络广播,其中应用程序被分解了。诸如图片,html,css等静态内容与Azure解决方案分开部署。天青网络应用程序只是链接到这些资源 – Chandermani 2010-06-09 06:56:09

0

微软的Steve Marx有一个blog post关于从Azure中的已安装VM运行网站。这可能是一种很好的开发模式,因为您只需更新存储在blob存储中的虚拟机的内容,而不必每次都重新部署到结构。

1

在我的情况下,当我将端口从80更改为其他值时(终点),速度恢复正常。