IIS后台多任务线程有限制吗?
先谈下基本情况,网站使用的是.Net 开发,因为任务要求,需要在网站上增加N个后台任务,让其自动定时执行操作。采用的在Application_Start 中注册 N个 Timer 来执行相应的定时任务,这样实现后台的多线程。在Application_End 中来访问自己的网站来保证网站不停止。
现在问题来了,在任务不多的时候,每隔几个小时让任务池自动回收,一起运行很正常。但是现在任务慢慢增加的时候发现回收时间越来越短了,重启时间越来越长了。以前几秒钟就可以完成网站重启,现在需要几分钟才能重启。所以如果不通过外部来访问网站,基本上网站就不会起来了,任务就不会再执行
因为我想请教一下:
1. 网站后台对线程数量是不是有限制?
2.虽然我后台多线程定时任务,但是基本上这些任务都不是同时执行的。而且集中上午,分批次自己慢慢完成的,就算同一时间有几个任务同时执行也是不占资源的线程,如果是线程中任务的问题,如占用过多的CPU内存资源引起的重启应该是不存在的,因为在不执行任务的时段也是有上面的问题,所以这是啥问题呢?是服务器本身设置的问题?
3. 有没有更好的解决方案来解决呢?
先谢谢各位,请教了