众所周知ASP.NET第一次访问时需要JIT编译,这就导致了ASP.NET程序第一次访问速度特别慢,尤其是ASP.NET MVC Razor模板引擎是解释型的,第一次还会将它编译一次,从前我们经常会说第一个人访问的都是人品有问题的,但是应用程序池会每过20分钟自动回收一次,也就是说每20分钟就要做一次人品有问题的人。嘿嘿,对于技术人员来说这当然没有什么,但是对于不太懂技术的客户可能就觉得非常莫名其妙了。

在IIS7.5之前我们想让我们只能设置的ASP.NET应用程序应用程序池的回收时间,比如设一个超大的时间,但是这样做只是防止了应用程序池定时回收,却不能解决重启后,或是其它原因进程回收后每一个人访问的慢的“人品问题”,所以微软在IIS7.5 WINDOWS 2008带的IIS上增加一个叫做热启动的功能。

热启动的原理很简章,就是在IIS的配置文件中做一些设定并指定一个继承自IProcessHostPreloadClient的类,然后告诉IIS说,如果哪个应用程序池回收了再次激活启动的时候就执行一下这家伙,而这家伙的功能基本上就是初始化系统的数据啦,把数据缓存到内存里啦等等这些。如此这般之后,当系统干完活儿的时候,真正访问的用户打开站点的时候会惊奇的发现,第一次访问也不慢啦,再不也用做人品不好的人了,从此腰也不酸了腿也不疼了一口气能上五楼了*^_^ *。这么好用的功能到底要怎么使用呢?

一、首先实现继承自IProcessHostPreloadClient的类:

try
   2: {
;
   4:     HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
;
null);
   7: }
catch { }

相关文章:

  • 2021-12-18
  • 2021-09-28
  • 2022-12-23
  • 2021-07-27
  • 2021-09-09
  • 2021-08-13
  • 2022-02-08
猜你喜欢
  • 2021-12-25
  • 2021-09-27
  • 2021-12-08
  • 2021-12-16
  • 2019-07-10
相关资源
相似解决方案