<%
class Cache
private obj 'cache内容
private expireTime '过期时间
private expireTimeName '过期时间application名
private cacheName 'cache内容application名
private path 'url
private sub class_initialize()
path=request.servervariables("url")
path=left(path,instrRev(path,"/top/cache/"))
end sub
private sub class_terminate()
end sub
public property get blEmpty
'是否为空
if isempty(obj) then
blEmpty=true
else
blEmpty=false
end if
end property
public property get valid
'是否可用(过期)
if isempty(obj) or not isDate(expireTime) then
valid=false
elseif CDate(expireTime)<now then
valid=false
else
valid=true
end if
end property
public property let name(str)
'设置cache名
cacheName=str & path
obj=application(cacheName)
expireTimeName=str & "expires" & path
expireTime=application(expireTimeName)
end property
public property let expires(tm)
'重设置过期时间
expireTime=tm
application.lock
application(expireTimeName)=expireTime
application.unlock
end property
public sub add(var,expire)
'赋值
if isempty(var) or not isDate(expire) then
exit sub
end if
obj=var
expireTime=expire
application.lock
application(cacheName)=obj
application(expireTimeName)=expireTime
application.unlock
end sub
public property get value
'取值
if isempty(obj) or not isDate(expireTime) then
value=null
elseif CDate(expireTime)<now then
value=null
else
value=obj
end if
end property
public sub makeEmpty()
'释放application
application.lock
application(cacheName)=empty
application(expireTimeName)=empty
application.unlock
obj=empty
expireTime=empty
end sub
public function equal(var2)
'比较
if typename(obj)<>typename(var2) then
equal=false
elseif typename(obj)="Object" then
if obj is var2 then
equal=true
else
equal=false
end if
elseif typename(obj)="Variant()" then
if join(obj,"^")=join(var2,"^") then
equal=true
else
equal=false
end if
else
if obj=var2 then
equal=true
else
equal=false
end if
end if
end function
end class
%>
asp 缓存实现教程代码
时间: 2024-08-22 08:52:28
asp 缓存实现教程代码的相关文章
asp 缓存类程序代码
class Cache private obj 'cache内容 private expireTime '过期时间 private expireTimeName '过期时间application名 private cacheName 'cache内容application名 private path 'uri private sub class_initialize() path=request.servervariables("url") path=l
ASP实例教程:asp无限级显示分类代码
为了方便使用分类,我定义了一个分类表category,里面字段是id(自动编号) cat_name(分类名) parent_id(父ID,对应本表ID) cat_order(顺序) is_show(是否显示) u_id(这个用来区别是新闻分类,还是产品分类,还是其他分类),为了方便,我将这些分类全部放在这张表中.在给客户添加分类的时候,结果有太多的分类,本来前台显示的时候,将它们全部显示出来了,好长.客户提出修改意见,要求将它们改成点击大分类,才可以将其子分类显示出来,并且每个分类下面还有一
ASP.NET网站管理系统退出 清除浏览器缓存,Session的代码_实用技巧
1.在系统登陆成功时记录登陆的用户名.密码等信息(登陆功能的部分代码) 复制代码 代码如下: Session["id"] = user.id.ToString(); Session["name"] = user.name.ToString(); Session["pwd"] = user.password.ToString(); Session["time"] = user.LoginTime.ToString(); Sess
使用asp缓存技术,提高asp承载能力
其实当你的web站点采用asp技术建立的初期,可能会感觉到的是asp动态网页技术带来的便利性,以及随意修改性.自如的http控制.但随着访问量的增加,你一定会发现自己的站点访问速度会越来越慢,IIS重新启动得越来越频繁. 一.什么是ASP缓存/为什么要缓存 其实当你的web站点采用asp技术建立的初期,可能会感觉到的是asp动态网页技术带来的便利性,以及随意修改性.自如的http控制.但随着访问量的增加,你一定会发现自己的站点访问速度会越来越慢,IIS重新启动得越来越频繁.那么,你一定想怎么优化
一起学习ASP缓存类
当你的web站点采用asp技术建立的初 期,可能感觉到的是asp动态网页技术带来的便利性,以及随意修改性.自如的http控制.但是,随着访问量的增加,你一定会发现自己的站点访问速度越来 越慢,IIS重新启动得越来越频繁.接下来,你一定想优化asp,诸如更换性能更优异的数据库.建立索引.编写存储过程等等.这些措施有些不需要增加成本 压力,有些则成本压力很大(譬如丛access到SQL),而且效果还不一定. 一.何谓ASP缓存/为什么要缓存 当你的web站点采用asp技术建立的初 期,可能感觉到的是
阿里西西原创-asp封装dll教程
阿里西西|教程|原创|asp封装 阿里西西原创视频教程下载地址:http://www.alixixi.com/Down/eBook/vb/2007/2007122192320.html 由本人第一次尝试制作的录像视频教程,由于电脑速度较慢,播放时间较慢,请谅解. 本录像讲解最基础的VB封装ASP代码生成DLL的制作教程,适合初级学习者参考.也是本人学习VB制作ASP组件的第一个尝试,录像基本成功. 用vb编写asp组件(dll)示例 下面,将演示如何使用vb制作asp的dll组件... 1. 启
Csharp+Asp.net系列教程(一)
asp.net|教程 本教程参考C#和ASP.NET程序设计教程撰写,有什么不足之处请大家指出,或在老猫的理想BLOG留言.首先讲解一下c#,这里只是粗略的讲解,详细内容请购买相关书籍,或参阅相关文档.c#已经取消了c++中的指针,并且在c++中大量被使用的操作符(:: ->)已经不在出现,c#中指支持一个".".c#具有面向对象编程语言的所有特性,如封装.继承.多态等.而且比java更面向对象,每种类型都可以看作一个对象.但c#指允许单继承,即一个类不会有多个基类.另外,c#没
Csharp+Asp.net系列教程(五)
asp.net|教程 本教程参考C#和ASP.NET程序设计教程撰写,有什么不足之处请大家指出,或在老猫的理想BLOG留言. 长假就要过去了.钱包也空空如也了,又要投入让人生畏的紧张工作中了... 感慨虽然很多,可是教程还是要继续的写,先发几句牢骚.^_^,不过教程可能以后要写的慢些了,因为心有余而力不足丫!不说废话进入正题: 有网友说教程过于繁琐,呵呵,下面正好要分析一下流程控制语句,有C程序设计基础的就略过这段,考虑有新手还是简要的介绍一下,详细还请参阅谭浩强教授的<C语言程序设计>一书吧
Csharp+Asp.net系列教程(六)
asp.net|教程 本教程参考C#和ASP.NET程序设计教程撰写,有什么不足之处请大家指出,或在老猫的理想BLOG留言. 好些天不写了.今天事情较少,有几个网友总是问,就又写了点东西.可能疏漏比较多,希望大家帮忙指正 预处理指令:与c++不同,c#没有独立的预处理器.在c#中,预处理指令并不是编译器开始编译代码之前的一个单独的处理步骤,而是作为词法分析的一部分来执行的.预处理指令都以#号开头并位于行首. #define指令用于定义符合,他的作用域是该定义所在的整个文件,符号定义必须放在所有其