asp.net网站过一段时间就重新编译了

时间:2022-02-16 17:04:38
我现在有一个asp.net网站,有一个定时器,我在网站的application_start中new了一个对象,然后在这个对象中启动了一个定时器定时对内存中的数据进行清理,结果我日志发现过一点时间后,这个定时器就停止工作了。我网站内存中的数据也自动被清空了。我再次登录网站后,发现网站应该是又重新编译了一遍,因为我再次登陆的速度变得慢了。这个问题如何解决啊?我经常晚上放在内存中的数据想明天看,结果明天早上起来内存里没有了。 我觉得是当网站一段时间没人登陆后网站内存就释放了。然后再次登录时进行重新编译了。如何解决这个问题啊?在线急等。能解释一下原因和原理吗?

19 个解决方案

#1


沙发
帮顶了

#2


我等!期待高手!

#3


IIS的应用池回收导致Application停止
在应用程序结束时发出一个Web请求访问网站,启动Application_Start。
iis的回收机制关掉,或者设置间隔时间 
数据库或windows服务定时执行

#4


引用 3 楼 wuyq11 的回复:
IIS的应用池回收导致Application停止
在应用程序结束时发出一个Web请求访问网站,启动Application_Start。
iis的回收机制关掉,或者设置间隔时间 
数据库或windows服务定时执行


有些地方不明白啊。
1. 在应用程序结束时发出一个Web请求访问网站,启动Application_Start。
这样定时器是起来了,但是内存是不是还是没有了啊。
2.iis的回收机制关掉,或者设置间隔时间 
是关掉那个固定时间回收吗?默认1740分钟吗?这样是不是网站就不会重新编译了吧。
3.数据库或windows服务定时执行
作何理解?

#5


再顶顶。正在试验。希望大家踊跃发言啊

#6


顶一下

#7


来人啊。

#8


IIS6有一个空闲回收机制的。
另外,ASP.NET内置的也有一个空闲回收机制,不过默认情况下是禁用的。

#9


帮顶。。没遇到过

#10


帮定  asp.net网站过一段时间就重新编译了

#11


定时器里面访问一个简单的页面就可以防止定时器停止了

#12


ASP.NET在某个时间内没人访问,就会触发Application_End的

#13


清理数据的时候,如果删除了网站目录下的文件夹的话,就会导致一些数据丢失,解决办法时,把对象存到session中去,且session用sessionstate方式保存.
好多的钻石

#14


该回复于2010-08-30 16:28:29被版主删除

#15


asp.net网站过一段时间就重新编译了

#16


引用 11 楼 net_lover 的回复:
定时器里面访问一个简单的页面就可以防止定时器停止了


我的这个是一个服务性质的网站,里面开辟了一块内存,定时器是定期维护内存的。这个网站并没有什么页面什么的东西,只有一系列的wcf。如何去做呢?

#17


引用 12 楼 net_lover 的回复:
ASP.NET在某个时间内没人访问,就会触发Application_End的

这样是不是下次再访问这个网站会引起网站的重新编译?

#18


学习 看钻钻。。

#19


楼主看下13楼的回答

#1


沙发
帮顶了

#2


我等!期待高手!

#3


IIS的应用池回收导致Application停止
在应用程序结束时发出一个Web请求访问网站,启动Application_Start。
iis的回收机制关掉,或者设置间隔时间 
数据库或windows服务定时执行

#4


引用 3 楼 wuyq11 的回复:
IIS的应用池回收导致Application停止
在应用程序结束时发出一个Web请求访问网站,启动Application_Start。
iis的回收机制关掉,或者设置间隔时间 
数据库或windows服务定时执行


有些地方不明白啊。
1. 在应用程序结束时发出一个Web请求访问网站,启动Application_Start。
这样定时器是起来了,但是内存是不是还是没有了啊。
2.iis的回收机制关掉,或者设置间隔时间 
是关掉那个固定时间回收吗?默认1740分钟吗?这样是不是网站就不会重新编译了吧。
3.数据库或windows服务定时执行
作何理解?

#5


再顶顶。正在试验。希望大家踊跃发言啊

#6


顶一下

#7


来人啊。

#8


IIS6有一个空闲回收机制的。
另外,ASP.NET内置的也有一个空闲回收机制,不过默认情况下是禁用的。

#9


帮顶。。没遇到过

#10


帮定  asp.net网站过一段时间就重新编译了

#11


定时器里面访问一个简单的页面就可以防止定时器停止了

#12


ASP.NET在某个时间内没人访问,就会触发Application_End的

#13


清理数据的时候,如果删除了网站目录下的文件夹的话,就会导致一些数据丢失,解决办法时,把对象存到session中去,且session用sessionstate方式保存.
好多的钻石

#14


该回复于2010-08-30 16:28:29被版主删除

#15


asp.net网站过一段时间就重新编译了

#16


引用 11 楼 net_lover 的回复:
定时器里面访问一个简单的页面就可以防止定时器停止了


我的这个是一个服务性质的网站,里面开辟了一块内存,定时器是定期维护内存的。这个网站并没有什么页面什么的东西,只有一系列的wcf。如何去做呢?

#17


引用 12 楼 net_lover 的回复:
ASP.NET在某个时间内没人访问,就会触发Application_End的

这样是不是下次再访问这个网站会引起网站的重新编译?

#18


学习 看钻钻。。

#19


楼主看下13楼的回答

#20