你能发布asp.net webforms项目吗?

时间:2014-08-14 07:18:22

标签: asp.net iis

我们在工作中有一个很大的项目,有时需要在白天发布。但是,应用程序(当然)会在发布和显示错误期间崩溃。 (因为/ bin被覆盖了)

有没有办法避免这种情况?有时发布需要3-4分钟。

我知道我可以使用app_offline.htm文件来显示消息,而不是看到实际的错误。

1 个答案:

答案 0 :(得分:3)

没有办法在部署中获得0停机时间。但是你有一些选择

部署预编译的站点

要加快部署后网站处于活动状态所需的时间,您可以使用ASP.NET Web Site Pre-compilation。此过程将打包该站点,以便在部署后无需动态编译。

优势

  • 更快的网站启动
  • 更少资产部署
  • 可以通过Web部署工具打包

缺点

  • 调整名称可能会更加困难;可以通过
  • 打开调试模式
  • 您无法编辑预编译的网站;你必须进行全面的重新部署
  • 您仍然应该使用app_offline.htm,以避免黄屏死机错误

添加其他网络服务器

这些方案的最佳选择是让2台服务器在其前面配备负载均衡器。然后,通过这种方式,您可以在部署新应用程序时使用负载均衡器将活动流量重定向到一个节点。

优势

  • 并行部署不会影响现有网站
  • 将未来扩展的容量提高一倍
  • 负载平衡允许负载在服务器之间均匀分布。

缺点

  • 会话现在需要存储在进程外。因此,您必须检查是否可以切换到out-of-process session storage以确认您没有任何序列化问题。 StateServer是一个快速开始本地化的人。
  • 部署的更多维护开销,因为您需要在部署过程中包含负载平衡配置。网络管理员通常对此很熟悉。