`
8366
  • 浏览: 813256 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

OSCache在web开发中的应用

阅读更多

 

OSCache简介

 


OSCache是OpenSymphony这个开源项目众多Projects中的一个。他是一个高效的J2EE缓存框架,能够很好的解决动态网站速度的问题。下面来
看下OSCache解决了动态网站的哪些令人郁闷的问题。
1.缓存动态内容:其实我们的动态网页上一般只有一部分是动态的(表头,表尾一般是不变的),如果我们缓存整个网页显然不成,因为有部分是
随着请求有可能变的。OSCache提供的方式是允许我们只缓存一部分网页。

2.缓存2进制内容:产生的图片和PDF文件在服务器加载的时候非常的耗时。OSCache解决这个问题是通过一个Servlet2.3的缓存过滤功能,然后能
够缓存任意的URI(比如一个完整的页面或者是一个产生的图片/PDF文件)

3.容错:有这种情况或许我们会遇到,就是当一个动态的网页出现错误。即便我们的页面有95%都加载完毕,但就是由于这个错误,整个页面就会
返回错误的提示或页面。OSCache允许我们提供出现错误时的缓存内容,如果出现就适时的提示出来了。

除了上面的这些Servlet的特征外,OSCache完全可以充当任何一个java程序的缓存方案。OSCache 的一般特征如下:
1.缓存任意对象:可以不受限制的缓存JSP的一部分或是Http请求,任何的Java对象都可以被缓存。

2.全面的API:通过API可以完完全全的控制OSCache的任何特性。

3.持久缓存:我们可以把认为重要的数据缓存到硬盘上。

4.支持集群:集群缓存数据能被单个的进行参数配置,不需要修改代码。

5.缓存记录的过期:你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默认性能不需要时)。

 

 

实例1:

 

我们现在的程序是这样的:
程序的静态内容和表单都是html
动态的内容都是一个servlet和一个jsp文件,servlet准备数据放到request里然后forward到jsp
jsp唯一功能就是显示request里面的数据。

现在的问题是有些页面访问数据库量大或者频繁想做一个cache.
我没用过oscache,在网上看了一下基本介绍的都是在jsp文件中加入如下形式的代码

Java代码 复制代码
  1. <cache:cache key="products" scope="session">   
  2.          some jsp content    
  3. </cache:cache>  
<cache:cache key="products" scope="session">
         some jsp content 
</cache:cache>



可是我的动态内容都是在servlet里面访问的数据库,对于动态内容用户只能访问servlet不能直接访问jsp
这样的话用户访问servlet还是要查数据库阿,
想我这种情况该怎么做呢??

 

解决方案:

1.已经找到解决办法 CacheFilter 正好满足我的要求
我就是想把产品列表缓存 弄个filter把那个servlet缓存到application就OK了
正好满足我的要求,我把缓存时间设置成了1小时

后台加入一个产品前台虽然不能立即看到 不过不碍事,增加产品的可能性很小,也不要求时时看到
基本开始的时候就都录入完毕了
2.如果要在首页缓存一个产品列表区块,可以这样子:)

Java代码 复制代码
  1. <cache:cache key="products" scope="session">    
  2. <jsp:include page="product_list.do"/>   
  3. </cache:cache>  

 

 

参考资料:

http://blog.csdn.net/foxcai/articles/1232293.aspx 
http://zhangxinjie.blog.ccidnet.com/blog-htm-itemid-724397-uid-20630-do-showone-type-blog.html

分享到:
评论
1 楼 01404421 2009-11-05  
引用

已经找到解决办法 CacheFilter 正好满足我的要求
我就是想把产品列表缓存 弄个filter把那个servlet缓存到application就OK了
正好满足我的要求,我把缓存时间设置成了1小时

后台加入一个产品前台虽然不能立即看到 不过不碍事,增加产品的可能性很小,也不要求时时看到
基本开始的时候就都录入完毕了

我今天刚解决这个问题,实现缓存的定时和手动刷新:
http://01404421.iteye.com/blog/510712

相关推荐

    oscache缓存技术应用

    OSCache的jsp cache标签在实际应用中十分常见,其详细的配置说明可以在OSCache的在线文档中找到。 通过测试,我们可以发现使用Cache能够有效减缓随着循环次数增加而产生的性能下降,使用Cache时CPU利用率可达到90%...

    Oscache框架的搭建步骤

    在现代Web开发中,缓存技术是提升系统响应速度、优化用户体验的关键策略之一。Oscache框架作为一种高效、灵活的缓存解决方案,在Java Web应用,尤其是JSP环境中,提供了强大的缓存管理功能。本文将深入探讨Oscache...

    OSCache配置说明文档

    此文档适合对Java Web开发有一定了解,希望引入缓存机制以优化应用性能的开发人员、系统架构师和项目管理人员。 参考文档: 1. OSCache官方文档 2. J2EE技术规范 3. OpenSymphony社区相关讨论与资源 背景介绍 ...

    OSCache学习例子 实例

    3. **初始化OSCache**:在应用启动时初始化OSCache实例,通常在Servlet容器的初始化回调方法中进行。 4. **使用OSCache**:将需要缓存的对象放入OSCache,例如: ```java Object object = ...; Cache cache = ...

    oscache文档

    作为一种广泛应用且高性能的J2EE缓存框架,OSCache能够应用于任何Java应用程序中作为通用缓存解决方案。 **主要特点:** 1. **缓存对象多样性**:不受限制地缓存部分JSP页面或HTTP请求,任何Java对象均可缓存。 2....

    oscache缓存配置

    osCache是Java平台上的一个高效、易用的缓存解决方案,它由Tuckey组织开发,广泛应用于各种Web应用中,以提高数据读取速度,减轻数据库压力。osCache的核心功能是提供了一个内存中的对象缓存系统,通过将常用数据暂...

    oscache处理

    Struts2、iBatis和Spring是Java Web开发中常用的三个框架,它们分别负责MVC模式中的Action层、数据访问层以及服务层的管理。在实际应用中,为了提高性能和减少服务器压力,通常会引入缓存机制。osCache就是这样一种...

    oscache-java缓存框架

    osCache是Java开发中常用的缓存框架之一,它主要用于提高应用程序的性能和效率,通过将数据存储在内存中,减少对数据库的访问。osCache不仅可以用于Web应用,也可以用于任何Java应用程序,支持集群环境,提供了丰富...

    oscache-2.4.1-full

    OSCache是OpenSymphony开发的一款高效、开源的Java缓存框架,主要应用于Web应用程序,特别是JSP环境。其核心功能是提供内存级别的缓存服务,从而显著提高网页的加载速度和减少数据库的压力。标题"oscache-2.4.1-full...

    oscache的使用

    3. **部署Web应用**: 将解压后的OSCache文件夹部署到Web服务器的应用目录中。 4. **配置Web服务器**: 修改Web服务器的相关配置文件,确保OSCache能够正确加载和运行。 5. **测试与验证**: 完成部署后,进行一系列的...

    OSCache需要的包

    在Java Web开发中,OSCache常被用于实现Session复制和分布式缓存,尤其在基于Spring或Hibernate的应用中,OSCache扮演着关键的角色。 `oscache.tld` 文件是 Tag Library Descriptor (TLD) 文件,它是JSP 2.0规范的...

    ajax4jsf-1.1.0.jar,oscache-2.3.2.jar

    Ajax4JSF与OSCache是两个在Java Web开发中经常使用的库,特别是在使用JavaServer Faces (JSF)框架时。这两个jar文件,"ajax4jsf-1.1.0.jar" 和 "oscache-2.3.2.jar",在开发过程中扮演着至关重要的角色。 Ajax4JSF...

    oscache,缓存机制的使用

    通过合理配置和使用oscache,开发人员能够在不牺牲动态内容质量的前提下,大幅度提升Web应用的性能表现,为用户提供更快捷、流畅的访问体验。正确理解和掌握oscache的使用方法,对于构建高效、稳定的Java Web应用...

    教你如何用好oscache的详细文档

    在Web应用中,缓存是一种常见的优化手段,它能够显著提升系统的响应速度,减轻数据库的压力。当内容在短时间内不会改变或频繁被请求时,使用缓存可以避免每次请求都从数据库中获取数据,从而提高用户体验。 ### 二...

    应用OSCache提升J2EE系统运行性能

    - 将OSCache集成到Web应用中,这通常涉及将OSCache的jar文件添加到Web应用的lib目录中。 3. **配置缓存规则** - 通过配置文件或编程接口设置缓存的有效期、刷新策略等参数。 4. **启用缓存功能** - 在应用中启用...

    oscache-2.1.1-full.zip_full_oscache_oscache 2_oscache2

    osCache 可用于Web应用程序,例如在Spring框架中集成,提高数据访问效率。也可以在企业级应用中,处理大数据量的缓存需求,减少数据库压力。结合集群功能,可以构建高可用、高性能的分布式缓存系统。 总的来说,...

    应用OSCache提升J2EE系统.pdf

    OSCache是Java开发中常用的开源缓存解决方案,尤其在J2EE系统中,它能显著提升应用程序的性能和响应速度。OSCache的核心功能是提供内存中的对象缓存服务,允许开发者将频繁访问的数据存储在内存中,避免了每次请求都...

    OSCache缓存jsp例子

    在Web开发中,JSP页面缓存可以减少服务器对数据库的查询次数,从而减少服务器负载和提高用户访问速度。 OSCache 提供了对Java对象的缓存管理功能,包括缓存对象的存储、检索、更新和过期策略等。它支持多种缓存策略...

    oscache-JSP缓存

    osCache作为一款强大的缓存工具,为Java Web开发提供了高效的缓存解决方案。通过合理地使用osCache,开发者能够优化应用程序的性能,减少服务器压力,并提供更好的用户体验。理解并掌握osCache的工作原理和使用方法...

    oscache-2.0.jar

    1. **Web应用优化**:在Java Web应用中,OSCache常用于缓存数据库查询结果,减少对数据库的访问,提高系统响应速度。例如,用户登录信息、热门商品列表等频繁查询的数据。 2. **分布式缓存**:虽然OSCache本身不...

Global site tag (gtag.js) - Google Analytics