为什么Application_OnStart会多次执行?

y2012 2014-02-08 02:58:44
过一段时间(半小时左右)Application_OnStart就会执行,统计数字会清零。我记得这个方法只有在程序运行的时候执行一次,为什么会这样。

<SCRIPT LANGUAGE="VBScript" RUNAT="Server">

Sub Application_OnStart
'当服务器开启时,设置在线用户计数器为0
Application("ActiveUsers") = 0

'设置每天访问量为0
Application("EveryDayUsers") = 0
'访问的时间为
Application("RecordDate") = "2009-01-01"

End Sub

Sub Session_OnStart

'设置Session对象的有效时间为20分钟(也可以更长,但是越长对服务器的资源'占用越多,因为服务器不接受少于20分钟的有效时间,所以设置少于20分钟的'有效时间是无效的)
'Session.Timeout = 30

' 当开始一个Session时在线用户计数器加1
Application.Lock
Application("ActiveUsers") = Application("ActiveUsers") + 1

'每天的访问量加1
Response.write Application("RecordDate") &"|" &Date()
if Application("RecordDate") <> Date() Then
Response.write "111"
Application.Lock
Application("RecordDate") = Date()
Application("EveryDayUsers") = 1
Application.UnLock
Response.write "<br>"& Application("RecordDate")
else
Application.Lock
Application("EveryDayUsers") = Application("EveryDayUsers")+1
Application.UnLock
end if

'统计总访问量
CountFile=Server.MapPath("/txtcounter.txt")
Set FileObject=Server.CreateObject("Scripting.FileSystemObject")
Set Out=FileObject.OpenTextFile(CountFile,1,FALSE,FALSE)
counter=Out.ReadLine
Out.Close
SET FileObject=Server.CreateObject("Scripting.FileSystemObject")
Set Out=FileObject.CreateTextFile(CountFile,TRUE,FALSE)
Application.lock
counter= counter + 1
Application("TotalUsers") = counter
Out.WriteLine(counter)
Application.unlock
Out.Close



End Sub


Sub Session_OnEnd

'当结束一个Session时用户计数器减1
Application.Lock
Application("ActiveUsers") = Application("ActiveUsers") - 1
Application.UnLock

End Sub

</SCRIPT>
...全文
401 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuchf 2014-05-28
  • 打赏
  • 举报
回复
怎么解决的?分享一下呗,我也碰到这个问题了
y2012 2014-02-11
  • 打赏
  • 举报
回复
自己解决了,不过还是要谢谢楼上几位。
  • 打赏
  • 举报
回复
iis,程序池,属性,性能,空闲超时,取消掉 访问量一般保存到数据库或者文件中,用application不靠谱
hookee 2014-02-09
  • 打赏
  • 举报
回复
IIS里有空闲时间的设置,如果设置了时间,超时后的访问会引起应用重启
y2012 2014-02-08
  • 打赏
  • 举报
回复
引用 1 楼 u013608453 的回复:
检查一下服务器上是否有 iisreset的定时,查看服务器的日志分析问题原因。
请问在哪里查看有没有iisreset的定时?
jorkin_me 2014-02-08
  • 打赏
  • 举报
回复
检查一下服务器上是否有 iisreset的定时,查看服务器的日志分析问题原因。

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧