`

ecache中的临时文件

 
阅读更多
一般 ehcache 的配置中默认的 diskStore 的路径设置的是 java.io.tmpdir ,等于是当前系统的临时目录。

但是在 Tomcat  和 Resin 这两个应用服务器上,临时目录是有区别的,在 Tomcat 上运行的应用通过 java.io.tmpdir 系统变量获取到的路径是 Tomcat 目录下的 temp 子目录,而 Resin 返回的是系统的临时目录,linux下可能就是 /tmp

在 Linux 下如果我们使用的是 root 账号来启动 Tomcat 和 Resin 的话,那这个问题就不存在。但是我们非常不建议用 root 来启动 Tomcat 和 Resin,这时候我们会单独的创建一个非特权账号,假设该账号名为 www 来运行应用服务器。

我们需要将 Tomcat 和 Resin 所在的目录授权给 www 账号,这样应用服务器的日志文件才能正常的写入,但是由于 Resin 的临时目录是对应系统的 /tmp 目录,因此如果应用中使用了 ehcache 并设置了存储路径为 java.io.tmpdir ,你就会发现启动的时候报错,提示没有在 /tmp 目录下创建文件的权限,这是因为 www 账号没有写 tmp 目录的权限。

解决的办法就是修改 ehcache 的 diskStore 配置的值为  user.home ,将存储文件路径指定到用户的主目录下即可。

而 Tomcat 就没有这个问题,因为它的临时目录在 {tomcat}/temp ,而整个 {tomcat} 都已经授权给 www 账号了。


所以一个webapps下如果有多个应用,定期清除下temp目录才行
分享到:
评论

相关推荐

    ecache详细用法说明

    ecache详细配置用法说明文档,集成springMvc,包括后台初始化 获取响应缓存,清除缓存等

    spring-ecache.xml文档

    很好的ecache配置文件,你指的拥有,小伙伴们快快下载吧

    Ecache Spring

    在集成Ehcache时,我们需要在Spring配置文件中声明Ehcache的bean,这通常是通过`ehcache.xml`配置文件完成的。配置中包含了缓存的名称、大小限制、过期策略等详细信息。例如,我们可以创建一个名为`myCache`的缓存,...

    ssm+ecache

    在这个"ssm+ecache"项目中,开发者不仅构建了一个基础的SSM应用,还引入了EhCache作为缓存解决方案,这对于提升应用性能和优化数据库交互至关重要。 首先,我们来了解一下Spring框架。Spring是Java企业级应用的核心...

    springboot整合redis+ecache

    在“springboot整合redis+ecache”的场景中,我们首先要理解这两个技术的核心作用。Redis 是一个开源的、基于内存的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种数据结构,如字符串、哈希、...

    ssm+shiro+redis+ecache整合认证权限

    ssm+shiro+redis+ecache整合认证权限,里面有配置了两套缓存,redis,和ecache,由于redis缓存频繁读取session,现在改成了本地缓存,ecache,速度有所提升,如果用于生产环境建议改成redis,替换成redis,值需要替换...

    ecache2.7.0

    1. **缓存配置**:Ehcache允许开发者通过XML配置文件来定制缓存的行为,包括缓存大小、过期策略、缓存策略(如LRU、LFU)等。在2.7.0中,这些配置选项得到了进一步的优化和增强,使得开发者可以更精确地控制缓存的...

    springboot+mybatis+swagger+shiro+ecache+nginx+angularjs前端

    标题 "springboot+mybatis+swagger+shiro+ecache+nginx+angularjs前端" 描述了一个集成多种技术的Web应用开发示例。这个项目融合了后端开发框架Spring Boot、持久层框架MyBatis、API文档管理工具Swagger、安全框架...

    Spring3 Hibernate4 Ecache整合

    2. **配置Hibernate**: Hibernate的配置文件中,需要启用二级缓存并指定使用Ecache插件。同时,针对每个需要缓存的实体类,需要在hibernate-mapping中声明缓存策略。 3. **整合Ecache**: 安装并配置Ecache服务器,...

    Python-Ecache是一个基于erlangnifleveldbprotobuf构建的轻量级高效没有容量限制的本地磁盘缓存系统

    在Ecache中,NIF被用来桥接Erlang和Python,使得Python程序能够直接与Erlang的高效并发机制交互,同时利用Erlang的稳定性,为缓存操作提供快速且可靠的执行环境。 **2. LevelDB:** LevelDB是由Google开发的一个轻...

    pringmvc mybatis vecolity ecache

    在SpringMVC和MyBatis项目中,Ecache可以被用来缓存频繁查询的结果,减少数据库压力,提升响应速度。 整合这四个技术,我们可以创建一个高性能的Web应用。首先,SpringMVC作为前端控制器,负责接收请求并分发给对应...

    springmvc_mybatis_ecache2

    在IT行业中,SpringMVC、MyBatis和Ecache2是三个非常重要的技术组件,它们在构建高效、可扩展的企业级应用中起着关键作用。接下来,我们将详细探讨这三个技术及其整合使用的相关知识点。 首先,SpringMVC是Spring...

    node-ecache-master.zip

    总结来说,`node-ecache-master`是一个强大而灵活的Node.js缓存解决方案,无论是在单机环境还是分布式环境中,都能提供高效的缓存服务。通过合理运用内存、Redis和二者的混合模式,开发者可以更好地优化应用程序,...

    Spring整合Ecache

    2. 不能保证数据的安全:当突然kill掉java的时候,可能会产生冲突,EhCache的解决方法是如果文件冲突了,则重建cache。这对于Cache 数据需要保存的时候可能不利。当然,Cache只是简单的加速,而不能保证数据的安全。...

    Spring 3.1.x + Hibernate 4.2.x+JBPM 5.2 + Ecache例子源码

    标题中的"Spring 3.1.x + Hibernate 4.2.x + JBPM 5.2 + Ecache例子源码"代表了一个集成开发环境,其中包含了四个关键的技术组件: 1. **Spring 3.1.x**:这是一个开源的应用框架,主要用于简化Java企业级应用的...

    Spring 3.1.x + Hibernate 4.2.x+JBPM 5.2 + Ecache例子

    标题 "Spring 3.1.x + Hibernate 4.2.x + JBPM 5.2 + Ecache 例子" 涉及的是一个集成多种技术的Java应用开发...在压缩包文件 "JBPM5sh" 中,可能包含了项目的源代码、配置文件以及相关文档,便于读者下载和运行项目。

    ssm+shiro+redis+ecache整合认证权限.zip

    这个压缩包文件的内容可能是为了演示或教学如何在项目中集成这些组件,实现用户认证和权限管理,并利用缓存提高性能。 1. **Spring**:Spring 是一个全面的后端开发框架,提供了依赖注入(DI)、面向切面编程(AOP...

    简单的缓存系统Ecache.zip

    代码中使用class CacheTest {  ECache, String> cache;  public boolean put(String key, String value) {  return cache.set(key, value);  }  public boolean put(String key, String ...

    SSM框架+shiro+ecache整合

    这个"SSM框架+shiro+ecache整合"项目提供了一个完整的解决方案,适用于需要进行复杂业务逻辑处理和高安全性需求的Web应用。Oracle数据库的使用表明项目可能针对大规模数据存储和处理进行了优化,Oracle以其高性能和...

    springmvc+ecache

    Ehcache 是一个流行的Java缓存解决方案,它可以用来存储Web应用中的临时数据,提高性能。在Spring MVC中,Ehcache 可以作为缓存管理器,提供本地缓存功能。 **集成Ehcache** 1. **引入依赖**: 添加Ehcache的Maven...

Global site tag (gtag.js) - Google Analytics