当前位置: 首页 > 图文教程 > 网络编程 > ASP > 巧用缓存提高asp程序的性能

ASP
看人家用使用InstallShield制作ASP安装程序(5)
看人家用使用InstallShield制作ASP安装程序(4)
看人家用使用InstallShield制作ASP安装程序(3)
看人家用使用InstallShield制作ASP安装程序(2)
看人家用使用InstallShield制作ASP安装程序(1)
取得浏览者的离开时间
base64编码、解码函数
动态显示图片的函数(显示广告条)
发送带附件的HTML格式邮件例程可以带附件
一种在父窗口中得知window.open()出的子窗口关闭事件的方法
一个老个写的无组件上传
避免asp的SQL的执行效率低
树型结构在ASP中的简单解决
无需数据库循环的无级分类代码
检查字符串strSource是否为big或big5码
有关重复记录的删除(SQL SERVER)
WINDOWS2000服务器账号登陆身份验证
使用VC++6.0制作ASP服务器控件简介
利用sql的存储过程实现dos命令的asp程序
WSH 直接将查询数据结果生成 EXCEL 表

ASP 中的 巧用缓存提高asp程序的性能


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 138 ::
收藏到网摘: n/a

<!--为了提高Asp程序的性能,人们常常将经常使用的数据缓存在 Application,
但是你修改了数据库后怎么让application更新呢,本文给你提供了一个合理的解决办法,如果谁有更好的算法,请跟帖讨论一下,谢谢
-->
<%
Class wawa_app_getrows
public Function wawa_Get_List(strapp,strconn,strsql)
'********************************
'功能:从Application中提取数组,如果application中的数据为empty值的时候再调用wawa_Get_Rows()函数来给application赋值.
' ,你可以在修改数据库的时候把相应的application值清空成empty,这就浏览的时候就会自动更新application了
' 如果你更新了数据库(比如说添加,修改或者删除了数据)那么在修改数据库后把相应的application变量去掉,
' 用下面的一条语句来实现清空指定的application值,其中strapp参数是要去掉的application变量名
' application.Contents.Remove(strapp)
' www.knowsky.com
'********************************
Dim wawa
wawa = Application(strapp)
If isempty(wawa) Then
wawa = wawa_Get_Rows(strconn,strsql)
Application(strapp) = wawa
End If
wawa_Get_List = wawa
End Function
public Function wawa_Get_Rows(strconn,strsql)
'********************************
'功能:从数据库里读取记录并用getrows方法
' 把记录保存成一个数组
'
'********************************
Dim rs_wawa
Set rs_wawa = CreateObject("ADODB.Recordset")
rs_wawa.Open strsql,strconn,,1,1
wawa_Get_Rows = rs_wawa.GetRows()
rs_wawa.Close
Set rs_wawa = Nothing
End Function
End Class
%>
<!-- 下面举个例子来说明上面的那个类怎么使用 -->
<%
dim strapp,strsql,strconn
strapp="xinwendongtai"
strsql="select top 5 id,title from wen where lei=161 order by id desc"
strconn="Driver={sql server};server=192.168.0.110;database=new;uid=sa;pwd=sa;"
set wawa_temp=new wawa_app_getrows
arr_xinwendongtai=wawa_temp.wawa_Get_LIst(strapp,strconn,strsql)
%>
<table width="100%" border="0" cellspacing="1">
<% If ubound(arr_xinwendongtai)<>0 Then %>
<% for i=0 to ubound(arr_xinwendongtai,2)-1 %>
<tr>
<td><a href="view.asp?id=<%= arr_xinwendongtai(0,i) %>"><%= arr_xinwendongtai(1,i) %></a></td>
</tr>
<% next %>
<% Else %>
<tr>
<td>还没有新闻呢</td>
</tr>
<% End If %>
</table>