2011-10-13 52 views
0

一个醒目网页,我们有一个活&部署ASP.Net应用程序是相当繁忙,这大约需要30 - 60秒的时候,二进制(bin文件夹)已经被上传到加载。目前,由于该项目刚刚启动,我们正在进行相对频繁的更新和维护(每天一次或两次)。显示,同时上传asp.net应用程序

该系统是目前使用1个Web服务器和网站托管在IIS。我们暂时不打算增加服务器的数量。基本上,我们希望的是,当用户访问该网站,如www.website.com,他们得到一个醒目网页,一样的东西:

Website undergoing maintenance and will be back online in a moment 

我们已经尝试过这种做法 - 在IIS中,我们已经定义了默认顺序的文件(顶部是第一优先)

1. splashPage.html 
2. default.aspx 

现在,该网站是活的和好了,我们改名为splashPage.htmlsplashPage2.html,所以它不是由IIS发现,并恢复到#2条目,default.aspx。在我们上传之前,我们将其从splashPage2.html重新命名为splashPage.html,以便它找到并显示它。

问题是,它似乎将IIS作为一个整体处理Web应用程序 - 即使HTML文件不需要后台处理,如果Web应用程序仍在加载,用户仍需等待30-60秒,直到它加载,击败飞溅页面的目的。

任何想法,我们如何能够克服这个问题,在目前的基础设施?

回答

1

App_Offline.htm会做的伎俩为您服务。

基本上,将在您的应用程序的根文件(包括所需的标记)和您的用户将自动看到的内容,直到你把它退了出去。

+0

我的问题是应用程序加载时间。 app_offline.htm技巧虽然在理念上很好,但会在网络应用程序出现时关闭它。一旦我重命名它,应用程序就会启动。这仍然留下30-60秒,而用户不知道最新开发的内容 –

+0

您是否正在使用预编译的网站(全部捆绑到.dll中,并且您无法查看代码隐藏)?如果不是,那可能会让您更快启动。除此之外,您可以做的事情并不多 - 以您描述的方式频繁更新您的网站并不是最好的方式。也许每天都有一个宣布的“维护”期,或者在一夜之间完成。 – Widor

+0

如果它的问题维护,它必须在那里完成,然后,不能等待。是的,我正在使用预编译的网站。 –

0

是应用

+0

我正在使用一个web应用程序而不是一个网站,因此它被自动编译 –

+0

关于性能分析,这个差距主要是所需的数据库项目的加载,以及NHibernate的初始化,并且没有太多可以改进的地方。 –

相关问题