`
desert3
  • 浏览: 2160573 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

tomcat catalina.home和catalina.base区别(转)

 
阅读更多
catalina.home和catalina.base这两个属性仅在你需要安装多个Tomcat实例而不想安装多个软件备份的时候使用,这样能节省磁盘空间。

以Tomcat6.0为例,其Tomcat目录结构如下:
bin (运行脚本)
conf (配置文件)
lib (核心库文件)
logs (日志目录)
temp (临时目录)
webapps (自动装载的应用程序的目录)
work (JVM临时文件目录[java.io.tmpdir])

让我们看看这些目录那些可以被多个Tomcat实例公用,其实只有 bin 和 lib 目录,其它目录conf、logs、temp、webapps和work每个Tomcat实例必须拥有其自己独立的备份。
明白了上述关系就容易理解catalina.home和catalina.base的用途了。
catalina.home指向公用信息的位置,就是bin和lib的父目录
catalina.base指向每个Tomcat目录私有信息的位置,就是conf、logs、temp、webapps和work的父目录。
仅运行一个Tomcat实例时,这两个属性指向的位置是相同的。
==================================================================================================

我们可以从Tomcat 5.5 的配置文档(http://tomcat.apache.org/tomcat-5.5-doc/config/host.html )中找到答案:

The description below uses the variable name $CATALINA_HOME to refer to the directory into which you have installed Tomcat 5, and is the base directory against which most relative paths are resolved. However, if you have configured Tomcat 5 for multiple instances by setting a CATALINA_BASE directory, you should use $CATALINA_BASE instead of $CATALINA_HOME for each of these references.

从这段描述可以看出CATALINA_HOME 和CATALINA_BASE 的区别。简单的说,CATALINA_HOME 是Tomcat 的安装目录,CATALINA_BASE 是Tomcat 的工作目录。如果我们想要运行Tomcat 的多个实例,但是不想安装多个Tomcat 软件副本。那么我们可以配置多个工作目录,每个运行实例独占一个工作目录,但是共享同一个安装目录。

Tomcat 每个运行实例需要使用自己的conf 、logs 、temp 、webapps 、work 和shared 目录,因此CATALINA_BASE 就指向这些目录。 而其他目录主要包括了Tomcat 的二进制文件和脚本,CATALINA_HOME 就指向这些目录。

如果我们希望再运行另一个Tomcat 实例,那么我们可以建立一个目录,把conf 、logs 、temp 、webapps 、work 和shared 拷贝到该目录下,然后让CATALINA_BASE 指向该目录即可
分享到:
评论

相关推荐

    windows下tomcat的catalina.out按天自动分割

    |%CATALINA_BASE%\bin\cronolog %CATALINA_BASE%\logs\catalina.%%Y-%%m-%%d.out >> null ``` - 这段代码的作用是在每次Tomcat执行动作时(如启动、停止),通过`cronolog`工具将当前的日志输出重定向到一个新的...

    Tomcat日志catalina.out过大解决方案--使用logback按日轮转.rar

    在Java Web应用开发中,Tomcat作为常用的Servlet容器,其默认的日志系统是通过`catalina.out`文件记录所有标准输出和错误输出。当应用运行一段时间后,`catalina.out`文件可能会变得非常大,占用大量磁盘空间,这...

    Tomcat使用Log4j输出catalina.out日志

    7. 删除和重启:删除$CATALINA_BASE/conf/logging.properties文件,并重启Tomcat服务器,使配置生效。 通过以上步骤,Tomcat服务器将使用Log4j来管理catalina.out日志,这不但解决了日志文件过大和格式不统一的问题...

    Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式

    在Java Web开发中,Tomcat是一个广泛使用的应用服务器,它默认使用`catalina.out`文件来记录所有标准输出和错误输出。然而,对于大型应用或长时间运行的服务器,`catalina.out`可能会变得非常大,不利于日志管理和...

    java中catalina.home与catalina.base区别点整理

    2. Catalina.home 和 Catalina.base 的区别:Catalina.home 指向公用信息的位置,而 Catalina.base 指向每个 Tomcat 目录私有信息的位置。 3. 实际应用:在配置日志时,使用 Catalina.base 来指定日志文件的路径。 ...

    详解关于tomcat切割catalina.out日志的三种方式

    Tomcat服务器在运行时会产生大量的日志信息,通常这些信息会被记录在catalina.out文件中。随着时间的推移,这个日志文件会变得越来越大,不仅占用大量的磁盘空间,而且会影响日志的读取效率。因此,对Tomcat的日志...

    catalina.out 日志分割

    - **日志文件路径**:确认`$CATALINA_BASE`环境变量正确指向了Tomcat的安装目录。 - **日志格式**:根据实际需求调整日志文件的命名规则,例如可以按照小时或分钟进行分割。 - **备份与清理**:定期对旧的日志文件...

    tomcat下用Log4j 按文件大小,生成catalina.out日志文件

    为了在Tomcat中使用这个配置,你需要将`log4j.properties`文件放在`$CATALINA_HOME/conf`目录下。同时,确保Tomcat启动脚本(`catalina.sh`或`catalina.bat`)包含以下行来加载Log4j配置: ```bash -Dlog4j....

    Catalina.out日志分割工具

    在Tomcat中,`catalina.out`文件是在`CATALINA_BASE/logs`或`CATALINA_HOME/logs`目录下创建的,它包含了标准输出和标准错误的所有内容。日志分割的目的是为了便于管理和检索,同时减少因单个大文件导致的系统资源...

    linux下切分tomcat的Catalina.out日志

    重启Tomcat后,检查`$TOMCAT_HOME/logs`目录下的`catalina.out`文件,现在应该可以看到按照日期切分的日志文件,例如`catalina.2023-09-16.out`等。 #### 总结 通过上述步骤,我们成功地实现了在Linux环境下使用...

    tomcat日志过大问题

    CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d fi ``` 这里的`%Y-%m-%d`表示按年月日格式生成日志文件名。 2. **删除日志文件创建语句**: 将`touch "$CATALINA_OUT"`行注释掉。 3. **修改启动...

    catalina.sh

    1. 设置环境变量:如JAVA_HOME、CATALINA_BASE、CATALINA_HOME等,这些变量对Tomcat的运行至关重要。 2. 检查依赖:确认Java环境已安装,并检查JVM版本是否满足Tomcat的要求。 3. 执行Java命令:通过`exec`命令启动...

    tomcat启动的问题--apr

    2010-8-11 18:24:13 org.apache.catalina.core.AprLifecycleListener lifecycleEvent 信息: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the ...

    最新版windows apache-tomcat-10.0.27-windows-x64.zip

    此外,熟悉Java环境变量(如JAVA_HOME)的设置、使用CATALINA_BASE和CATALINA_HOME的区别,以及如何通过命令行或管理控制台来管理Tomcat实例,都是关键技能。对于开发者来说,理解Servlet和JSP的工作原理,以及如何...

    catalina.out日志切分.docx

    ### Linux环境下使用Cronolog工具实现Tomcat日志文件catalina.out的自动切分 在运维场景中,为了确保服务器性能稳定以及便于日志管理,通常需要对较大的日志文件进行定期切割。特别是在使用Apache Tomcat服务器时,...

    Tomcat中的catalina.bat原理详细解析

    1. **`CATALINA_BASE`和`CATALINA_HOME`**: 脚本会查找`CATALINA_BASE`目录下的`setenv.bat`文件,用于覆盖全局的`CATALINA_HOME`环境变量设置。如果没有`setenv.bat`,则使用`CATALINA_HOME`。 2. **`setclasspath....

    最新版windows apache-tomcat-9.0.50-windows-x64.zip

    同时,环境变量也需要设置,特别是CATALINA_HOME指向Tomcat的安装目录,以及CATALINA_BASE用于指向特定的实例。 在64位Windows系统上运行,Apache Tomcat 9.0.50能更好地利用系统资源,处理更多的并发请求。这主要...

    tomcat8用redis实现session共享.rar

    3、将redisson-all-3.11.2.jar和redisson-tomcat-8-3.11.2.jar 拷贝到${catalina.base}\lib下 4、在原有tomcat\context.xml下 添加 以下代码(参考 <Manager className="org.redisson.tomcat....

    cronolog-1.6.2.tar.gz+catalina.sh

    nohup $JAVA_OPTS -Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties -Djava.awt.headless=true -classpath $CLASSPATH -Dcatalina.base=$CATALINA_BASE -Dcatalina.home=$CATALINA_HOME -D...

Global site tag (gtag.js) - Google Analytics