对于Web站点来说,缓存数据就是将用户每次访问你的站点时需要动态生成的信息预先生成并存储在内存中,以静态的形式送给用户. 这么说太抽象了,让我们来举个例子说明甚麽是站点的缓存. 假设你的站点有一个更新不是很频繁的下拉式列表框,列表框中的选项当用户访问站点时从数据库中取出,我们可以将这些选项预先取出,存放在内存中以提高性能.
Application Object
Application Object能保存整个应用的全局信息. 换言之,它存储着站点的全局信息. 每个站点都被认为是一个应用,你可以在global.asa中利用Application Object存储你的信息.
让我们来看看示例程序. 在这个例子里,我将Application Object作为一个变量用来存储下拉菜单的菜单项. 当每次需要从数据库中读取菜单项的时候,我们从变量中读取,避免了对数据库的频繁访问.
请看以下的代码(我写了详尽的注释来解释每行代码的含意):
'here we define the variable'
as an a application object
ListBox = Application("ListBox")
'we then check to see if it is already set
If ListBox = "" Then
'it's not, so we go to the database and retrieve it
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "DSN=travel;UID=;PWD="
sql = "SELECT * FROM types"
Set rs = oConn.Execute(sql)
crlf = chr(13) & chr(10)
'Now we assign the recordset to the 'ListBox'
'variable using a loop
ListBox = "" & crlf
Do Until rs.EOF
Listbox = ListBox & " " & _
rs("type") & "" & crlf
rs.MoveNext
Loop
'we then assign the variable to the
'Application object below
Application("ListBox") = ListBox
End If
%>
从代码中我们可以看出,数据只有第一次被读取时访问数据库,然后将之存储在
Application object中,以后每次都从缓存中读取,这样将会加快站点的速度. 并不是每个站点都需要缓存来提高速度,但如果你的站点上运行着复杂的应用程序,且你想让系统获得最优的性能,那么你最好考虑一下缓存数据
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-124549/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10294527/viewspace-124549/
本文深入探讨了缓存技术如何通过减少数据库访问频率,显著提升Web站点的响应速度和性能。通过使用ApplicationObject存储全局信息,实现对不频繁更新的数据进行预生成和存储,从而避免重复读取数据库,加速站点加载。

被折叠的 条评论
为什么被折叠?



