先锋缓存类 Version 2004

 <!--#include   file="conn.asp"   -->  
  <!--#include   file="clsCache"   -->  
  <%  
  sql="select   *   from   news"  
  dim   content,myCache,sql  
  set   myCache=new   cache  
  myCache.name="lkstar"   '定义缓存名称    
  if   myCache.valid   then   '如果缓存有效  
  '---------------------修改地方1A---------------  
  set   content=myCache.value   '读取缓存内容  
  else  
  'content="......"   '大量内容,可以是非常耗时大量数据库查询记录集  
  '---------------------修改地方1B---------------  
  set   content=conn.execute(sql)  
  myCache.add   content,dateadd("n",1000,now)   '将内容赋值给缓存,并设置缓存有效期是当前时间+1000分钟  
  end   if    
  set   clsCache=nothing   '释放对象  
  %>  
   
  <%    
  '-------------------------------------------------------------------------------------  
  '转发时请保留此声明信息,这段声明不并会影响你的速度!  
  '**************************       【先锋缓存类】Ver2004     ********************************  
  '作者:孙立宇、apollosun、ezhonghua  
  '官方网站:http://www.lkstar.com       技术支持论坛:http://bbs.lkstar.com  
  '电子邮件:kickball@netease.com         在线QQ:94294089  
  '版权声明:版权没有,盗版不究,源码公开,各种用途均可免费使用,欢迎你到技术论坛来寻求支持。  
  '目前的ASP网站有越来越庞大的趋势,资源和速度成了瓶颈  
  '——利用服务器端缓存技术可以很好解决这方面的矛盾,大大加速ASP运行和改善效率。  
  '本人潜心研究了各种算法,应该说,这个类是当前最快最纯净的缓存类。  
  '详细使用说明或范例请见下载附件或到本人官方站点下载!  
  '--------------------------------------------------------------------------------------  
  class   clsCache  
  '----------------------------  
  private   cache                       '缓存内容  
  private   cacheName               '缓存Application名称  
  private   expireTime             '缓存过期时间  
  private   expireTimeName     '缓存过期时间Application名称  
  private   path                         '缓存页URL路径  
   
  private   sub   class_initialize()  
  path=request.servervariables("url")  
  path=left(path,instrRev(path,"/"))  
  end   sub  
     
  private   sub   class_terminate()  
  end   sub  
   
  Public   Property   Get   Version  
    Version="先锋缓存类   Version   2004"  
  End   Property  
   
  public   property   get   valid   '读取缓存是否有效/属性  
  if   isempty(cache)   or   (not   isdate(expireTime))   then  
  vaild=false  
  else  
  valid=true  
  end   if  
  end   property  
   
  public   property   get   value   '读取当前缓存内容/属性  
  if   isempty(cache)   or   (not   isDate(expireTime))   then  
  value=null  
  elseif   CDate(expireTime)<now   then  
  value=null  
  else  
  value=cache  
  end   if  
  end   property  
   
  public   property   let   name(str)   '设置缓存名称/属性  
  cacheName=str&path  
  cache=application(cacheName)  
  expireTimeName=str&"expire"&path  
  expireTime=application(expireTimeName)  
  end   property  
   
  public   property   let   expire(tm)   '设置缓存过期时间/属性  
  expireTime=tm  
  application.Lock()  
  application(expireTimeName)=expireTime  
  application.UnLock()  
  end   property  
   
  public   sub   add(varCache,varExpireTime)   '对缓存赋值/方法  
  if   isempty(varCache)   or   not   isDate(varExpireTime)   then  
  exit   sub  
  end   if  
  cache=varCache  
  expireTime=varExpireTime  
  application.lock  
  '---------------------修改地方2---------------  
  if   isobject(varCache)   then  
  set   application(cacheName)=cache  
  else  
  application(cacheName)=cache  
  end   if  
  '---------------------修改地方2---------------  
  application(expireTimeName)=expireTime  
  application.unlock  
  end   sub  
   
  public   sub   clean()   '释放缓存/方法  
  application.lock  
  application(cacheName)=empty  
  application(expireTimeName)=empty  
  application.unlock  
  cache=empty  
  expireTime=empty  
  end   sub  
     
  public   function   verify(varcache2)   '比较缓存值是否相同/方法——返回是或否  
  if   typename(cache)<>typename(varcache2)   then  
    verify=false  
  elseif   typename(cache)="Object"   then  
    if   cache   is   varcache2   then  
      verify=true  
    else  
      verify=false  
    end   if  
  elseif   typename(cache)="Variant()"   then  
    if   join(cache,"^")=join(varcache2,"^")   then  
      verify=true  
    else  
      verify=false  
    end   if  
  else  
    if   cache=varcache2   then  
      verify=true  
    else  
      verify=false  
    end   if  
  end   if  
  end   function  
  %>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
Caffeine是一款高性能、最优缓存库,受到了Google Guava缓存和ConcurrentLinkedHashMap的启发而设计。它提供了多种加载方式,包括手动加载、自动加载、手动异步加载和自动异步加载。你可以根据需求选择不同的加载方式,比如做降级或异步操作。 下面是一个使用Caffeine的本地缓存配置的示例代码: ```java package demo.springboot.config; import com.github.benmanes.caffeine.cache.Cache; import com.github.benmanes.caffeine.cache.Caffeine; import lombok.extern.slf4j.Slf4j; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import java.util.concurrent.TimeUnit; @Slf4j @Configuration public class CaffeineConfig { @Bean public Cache<String, Object> cache() { final Cache<String, Object> cache = Caffeine.newBuilder() .expireAfterWrite(30, TimeUnit.SECONDS) .initialCapacity(10) .maximumSize(100) .recordStats() .build(); log.info("本地缓存Caffeine初始化完成 ..."); return cache; } } ``` 以上是一个简单的Caffeine缓存工具的配置,它初始化了一个本地缓存并设置了相关的参数,包括过期时间、初始容量、最大条数等。你可以根据实际需求进行配置和使用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [本地缓存天花板-Caffeine](https://blog.csdn.net/weixin_37799575/article/details/128492436)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值