• 外置 tomcat 服务器设置


    外置 Tomcat 没这么太用, 今天在 windows  搭 xwiki  服务器, 比预期多花了点时间, 主要是 tomcat 环境变量没配对, tomcat 启动后闪退, 还没有日志. 最后定位到是 tomcat 环境变量问题, 解决起来就容易了. 

    1. Tomcat 启动后闪退, 关键获知原因的方法:

    startup.bat 启动脚本调用 catalina.bat , 而在  catalina.bat 中使用 windows 的 start 方式启动, 即启动一个新的窗口, 一旦闪退, 这个新窗口立即关闭, 看不到日志输出.  这时应该将 start 启动, 调整为本窗体启动, 即删除 start 前置命令. 

    2. Tomcat 的几个环境变量. 

    在 tomcat 安装目录的bin子目录下, 新建一个 setenv.bat 文件, 将下面的环境变量设置加到这个文件中, 该文件会在 tomcat startup.bat启动时候被自动加载, 正好用来设置环境变量. 

    set JAVA_HOME=c:javajdk1.8 

    set CATALINA_HOME=c: omcat omcat8.5.42

    set CATALINA_BASE=c: omcat omcat8.5.42

    set JAVA_OPTS="-Xmx1024m  -Xms1024m"

    需要说明的是, CATALINA_HOME 应指向 tomcat 的 bin和 lib 的父目录, 即 binary 的公共路径. 

    而 CATALINA_BASE 应指向 tomcat 的conf和logs和webapps和work的父目录, 即网站应用的父目录. 

    对于单tomcat 实例, 这两个环境变量取值是一样的. 

    3. 应用程序 war 包部署路径

     应用程序 war 应该放置到 webapps 目录下, 多数war包文件一般含有版本号,  但我们期望应用的url 最好只包含应用名, 而不要包含版本号, 需要重新命名 war 包名称,  比如xwiki.org 官网下载的 xwiki-platform-distribute-war-11.5.war, 放置到 webapps 下后, 需要重命名为 xwiki.war, 或者解压war包. 

    JAVA_OPTS 说明含义:
    -Xms128m
    表示JVM Heap(堆内存)最小尺寸128MB,初始分配
    -Xmx512m
    表示JVM Heap(堆内存)最大允许的尺寸256MB,按需分配。

    说明:如果-Xmx不指定或者指定偏小,应用可能会导致java.lang.OutOfMemory错误,此错误来自JVM不是Throwable的,无法用try...catch捕捉。

    PermSize和MaxPermSize指明虚拟机为java永久生成对象(Permanate generation)如,class对象、方法对象这些可反射(reflective)对象分配内存限制,这些内存不包括在Heap(堆内存)区之中。

    -XX:PermSize=64MB 最小尺寸,初始分配
    -XX:MaxPermSize=256MB 最大允许分配尺寸,按需分配
    过小会导致:java.lang.OutOfMemoryError: PermGen space

    MaxPermSize缺省值和-server -client选项相关。
    -server选项下默认MaxPermSize为64m
    -client选项下默认MaxPermSize为32m
     

  • 相关阅读:
    hibernate的dialect大全
    jdbc.properties 链接各类数据库的基本配置以及URL写法
    Springboot中redis的学习练习
    博客开通了
    Java String类的hashCode()函数
    Java String类中CaseInsensitiveComparator.compare()方法的实现
    git pull远程所有分支
    Python的权限修饰符
    Tmux快捷键
    __future__模块
  • 原文地址:https://www.cnblogs.com/harrychinese/p/tomcat-config.html
Copyright © 2020-2023  润新知