• --:)欢迎访问锋网源码(:--
  • 首页
  • RSS订阅
  • 常用软件
  • 网页模板
  • 网站运作
  • 锋网学院
  • 繁體中文

  • 学院首页
  • 新闻资讯
  • 网站运营
  • 网站开发
  • 美工设计
  • 数据库类
  • 服务器类
  • 网络应用
  • 操作系统
  • 软件教学
编程开发   认证考试   网络安全   文章搜索: 高级搜索
会员登录/控制面版 您的位置: 学院首页 >> 网站开发 >> ASP教程 >> 文章内容
 

精彩推荐

 
 

本类推荐文章

  • ASP教程 插入Access记录后..
 
 

本类阅读排行

  • IIS的安装和配置全过程
  • ASP教程:制作登陆验证页面程..
  • 分析器错误信息: 未能加载文..
  • www 56.com.cn 电影-www 56...
  • “x365x”“纯爱社区”关键词..
  • ASP教程 插入Access记录后..
  • 动网论坛超级安装指南,新新人..
  • ASP乱码的解决方法 
  • 用ASP实现一个真正的注册页面..
  • Flash和ASP实现的用户登录/注..
  • 用ASP将数据读数导出EXCEL文..
  • 怎样在xp下配置iis
  • 2000/XP IIS配置问题
  • 去除空格的函数
  • ASP简介
  • LINE 的计数器源程序(附源代..
  • ASP如何获取真实IP地址
  • 网站日常维护,你需要做什么..
  • 用ASP发送邮件
  • 聊天室实现私聊(一)
 
 

ASP教程:初步接触ASP缓存技术

  • 日期:2008-01-01     人气:     出处:本站     作者:
  • 字体大小:
  • 小
  • 中
  • 大

  使用ASP中的缓存技术可以很大程度上提高你的网站性能,其实这些实现方法是非常的简单,它将说明如何在服务器上的缓存是如何工作以及你如何使用一种被称为断开连接的ADO连接技术。
  在介绍这些技术之前先说明一下到底什么是ASP的缓存技术。
  所谓缓存其实就是在内存中开辟一个用来保存数据的空间,使用缓存你就不用频繁的访问你保存在硬盘上的数据了,灵活的使用缓存你就免去了心疼的看着可怜的硬盘饱受读数据时的折磨了。当你一旦执行了一个查询动作,并且将查询结果放入缓存中后,你就可以很迅速的重复访问这些数据了。而如果你不把数据放入缓存的话,当你再次执行这个查询时,服务器会将进程耗费在从数据库中获取并排序上了。
  当数据保存在缓存中时,再次查询时耗费的时间主要是在显示数据的时间上了。
也就是说,我们不应该把经常需要改变的数据放到服务端的缓存中,我们应该把改变少,但是又需要经常访问的数据放到缓存中。

  现在我们先讨论ASP在服务端使用缓存的技术,过会再讨论ASP如何在客户端使用
缓存的技术。
  当你有大量的数据(静态的,就是说变动比较少的)需要显示给客户端时,你就可以考虑使用服务端的缓存技术了。这种技术尤其适用于那些显示风格一致性比较强的网站(呵呵,对于非主流的网站可不好用的说。)
  其实实现方法特别的简单,大家只要看看下面这个简单的例子就明白了。
  这是一个用来显示书籍分类的例子程序
DisplayBooks.ASP文件:

< %@ LANGUAGE=JavaScript % >
< html >
< body >
< form method=post >
书籍分类; < %= getBooksListBox() % >
< p>
< input type=submit >
< %
function getBooksListBox()
{
BooksListBox = Application("BooksListBox")
if (BooksListBox != null) return BooksListBox;
crlf = String.fromCharCode(13, 10)
BooksListBox = "< select name=Books>" + crlf;
SQL = "SELECT * FROM Books ORDER BY Name";
cnnBooks = Server.CreateObject("ADODB.Connection");
cnnBooks.Open("Books", "Admin","");
rstBooks = cnnBooks.Execute(SQL);
fldBookName = rstBooks("BookName");
while (!rstBooks.EOF){
BooksListBox = BooksListBox + " < option>" +


fldBookName + "" + crlf;
rstBooks.MoveNext();
}
BooksListBox = BooksListBox + ""
Application("BooksListBox") = BooksListBox
return BooksListBox;
}
% >

  很简单把,其实就是用了很简单的Application技术,而且就一句话的不同:
  Application("BooksListBox") = BooksListBox
  你可以验证一下你就会发现服务器上的请求数量会降低不少的。这种情况尤其适合与那些更新不是很频繁的网站内容,例如你一天(或则很长时间)只更新一次。

  下面再讨论一种客户端的缓存技术这种技术也叫断开连接的ADO连接技术(翻译水平太次,听上去怎么这么别扭)。这种技术主要使用在用来保存用户个人信息,例如用户的密码,代号等等上面。它主要使用了ADO的一些属性。同时也回答了一些网友曾经提到过的能否在Applocation中使用ADO对象的问题。解释不清楚,下面让代码来发言:
文件GLOBAL.ASA:
< !--METADATA TYPE="TypeLib" FILE="C:\Program Files\Common
Files\system\ado\msado15.dll"-- >
< SCRIPT LANGUAGE=VBScript RUNAT="Server" >
Sub Application_OnStart
SQL = "SELECT UserName, Password FROM UserInfo"
cnnUsers = "DSN=User"
Set rsUsers = Server.CreateObject("ADODB.Recordset")
'注意下面这两句话,就是用来实现那个叫可用的断开连接的ADO技术
rsCustomers.CursorLocation = adUseClient
rsCustomers.Open SQL, cnnAdvWorks, adOpenStatic, AdLockReadOnly
' 断开RecordSet的和数据库的连接
rsCustomers.ActiveConnection = Nothing
Set Application("rsCustomers") = rsCustomers
End Sub


文件Users.ASP
< %
'Clone方法使得每个用户拥有自己的一个RecordSet集合
Set yourUsers = Application("rsUsers").Clone
Set UserName = yourUsers("UserName")
Set Password = yourUsers("Password")
Do Until yourUsers.EOF
% >
用户姓名:< %= UserName % > 用户密码:< %= Password % >
< %
yourUsers.MoveNext
Loop
% >

相关文章
  • ASP关于类的Let,Set和Get的用法的异同
  • ASP操作XML的类
  • ASP操作XML文件的主要方法和实现
  • asp控制xml数据库的6段代码
  • ASP对XML文档中文本的增加、删除、修改、查看
  • ASP教程:ASP关于数组的应用技巧
  • ASP是不是值得学习呢?
  • ASP教程:ASP是不区分大小写
  • ASP动态网站制作中使用MYSQL的分析
  • 如何在98上支持cgi,php,asp,mysql
相关软件

  • 网友评论:
  • 查看所有评论
  • 我要发表评论
 

关于本站 | 广告联系 | 版权声明 | 网站地图 | 加入收藏 | 帮助中心 |

Copyright © 2006-2007 fwvv.net  程序支持:木翼  皖ICP备06004916号