完全自主创建Wrapper Tomcat容器
Wrapper Tomcat 使用说明
1. Wrapper Tomcat 简介
1) Wrapper Tomcat 是使用Apache Tomcat 整合 Java Service Wrapper 的一个servlet容器。使用Wrapper Tomcat与使用Apache Tomcat运行时无任何差别,区别在于Tomcat启动与配置时有点不一样。整合Java Service Wrapper ,使用Wrapper 方式启动Tomcat的初衷是解决Apache Tomcat使用jsvc方式启动的日志文件大小不可控问题。
2) Wrapper Tomcat目录结构
├─bin
├─conf
│ └─Catalina
│ └─localhost
├─lib
├─logs
├─temp
├─webapps
└─work
2. Wrapper Tomcat 优点
1) 解决Apache Tomcat使用jsvc方式启动的日志文件大小不可控问题。
2) 当Wrapper Tomcat 内存溢出之后可以自动重启Tomcat。
3) 配置非环境变量下的JDK,可将java.exe 重命名为tomcat.exe 或其他*.exe,便于在任务管理器中区分Tomcat进程。
4) 注册成服务之后可设置开机启动
3. Wrapper Tomcat 环境
Wrapper Tomcat 可在Window,Linux,Mac环境下运行
启动Tomcat需要有JDK
4. Wrapper Tomcat 配置 (wrapper.conf )
在conf 目录下有一个配置文件wrapper.conf,文件打开之后结构如下图类似(我使用notepad++打开)
配置文件使用key=value方式来配置,类似于java中的*.properties配置文件
#号为注释
配置项:
1) encoding=UTF-8
配置wrapper编码,默认使用UTF-8
2) wrapper.java.command=java
设置JDK环境变量,此处如果配置了set.JAVA_HOME,则后面可以使用 wrapper.java.command=%JAVA_HOME%/bin/java.exe
另外,Wrapper设置一个变量可以这样设置 set.变量名称=变量值,例如 设置PATH :
set.PATH=C:/Window/System32;
使用时可以使用 %变量名称%取得变量值,与在window下的bat文件语法相似,如果系统已经配置了环境变量,也可以使用 %变量名称% 取得变量值,例如系统已经定义了 JAVA_HOME 这个变量,可以直接使用 %JAVA_HOME% 取得变量值,这样就不需要使用set.JAVA_HOME
3) wrapper.java.mainclass= org.tanukisoftware.wrapper.WrapperJarApp
#此处设置java Wrapper 启动入口类,一般使用默认配置即可
4) wrapper.java.classpath.1=./*.jar
配置java环境变量 .表示当前目录(wrapper.exe)所在文件目录,如果需要配置多个环境变量,可以使用wrapper.java.classpath.序号=值,例如:
wrapper.java.classpath.1=./*.jar
wrapper.java.classpath.2=../lib/*.jar
wrapper.java.classpath.3=../bin/*.jar
5) wrapper.java.library.path.1=./
配置wrapper.dll所在文件目录,或者其他dll所在文件目录
6) wrapper.java.initmemory=128
配置Java初始化内存,单位MB
7) wrapper.java.maxmemory=768
配置Java堆内存,单位MB
8) wrapper.app.parameter.1=./bootstrap.jar
配置java入口启动java包,前提是前面配置了
wrapper.java.mainclass= org.tanukisoftware.wrapper.WrapperJarApp
如果使用
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperStartStopApp
则后面wrapper.app.parameter.*配置如下:
wrapper.app.parameter.1= org.apache.catalina.startup. Bootstrap
wrapper.app.parameter.2=1
wrapper.app.parameter.3=start
wrapper.app.parameter.4= org.apache.catalina.startup. Bootstrap
wrapper.app.parameter.5=true
wrapper.app.parameter.6=1
wrapper.app.parameter.7=stop
9) wrapper.java.additional.1=-Dcatalina.base=../
wrapper.java.additional.2=-Dcatalina.home=../
wrapper.java.additional.3=-Djava.io.tmpdir=../temp
配置Tomcat启动环境变量
10) wrapper.logfile=../logs/wrapper.log
配置日志文件存放目录
11) wrapper.logfile.format=LPTM
配置日志文件输出格式(下面摘自Wrapper 官网)
'L' for log level,
'P' for prefix,
'D' (Since ver. 3.1.0) for thread,
'T' for time,
'Z' for millisecond time,
'R' quite duration milliseconds showing the time since the previous JVM output,
'U' (Since ver. 3.5.0) for approximate uptime in seconds (based on internal tick counter and is valid up to one year from startup),
'M' for message.
12) wrapper.logfile.maxsize=5m
配置日志文件最大体积0表示无限制 5m表示5MB ,记得要加上单位,如不加单位,默认是b
13) wrapper.logfile.maxfiles=20
配置最大日志文件存放数,多余的会被删除
14) 配置window服务
# Name of the service
wrapper.name=tomcat8095(名称)
# Display name of the service
wrapper.displayname= tomcat8095(显示名称)
# Description of the service
wrapper.description= tomcat8095 (名称描述)
# Service dependencies. Add dependencies as needed starting from 1
#wrapper.ntservice.dependency.1=
# Mode in which the service is installed. AUTO_START, DELAY_START or DEMAND_START
wrapper.ntservice.starttype=AUTO_START
完全自主创建Wrapper Tomcat容器的更多相关文章
- Docker实战之创建一个tomcat容器
一.Docker与虚拟机的区别 二.Docker学习步骤 2.1:安装宿主操作系统 在VMVare中安装了Ubuntu 16.04.2 LTS (GNU/Linux 4.4.0-62-generic ...
- 精尽Spring Boot源码分析 - 内嵌Tomcat容器的实现
该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ...
- 精尽Spring Boot源码分析 - 支持外部 Tomcat 容器的实现
该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ...
- Spring Boot2.0之 原理—创建内置Tomcat容器
前面所述的https://www.cnblogs.com/toov5/p/9823728.html 中的第一条先不赘述了,就是玩了maven 重点介绍后两条 首先内置Tomcat: SpringBoo ...
- maven这些工具负责创建项目,然后maven负责打包好war包扔进tomcat容器,tomcat容器接受的只是jar包
maven这些工具负责创建项目,然后maven负责打包好war包扔进tomcat容器,tomcat容器接受的只是jar包 2.tomcat不管你什么编译的,也不管你开发工具是什么.Tomcat只接受w ...
- docker创建tomcat容器
配置阿里云镜像地址:先在阿里云搜索:容器镜像服务 --> 最下面找到 容器加速服务 docker配置 etc目录下 创建docker文件夹 mkdir --->docker --- ...
- Docker - 解决创建 tomcat 容器镜像却无法访问页面的问题
问题背景 查看 tomcat 镜像 docker images 运行并创建 tomcat 容器 docker -d -p 8888:8080 --name=tomcat2 tomcat:latest ...
- Tomcat剖析(五):Tomcat 容器
Tomcat剖析(五):Tomcat 容器 1. Tomcat剖析(一):一个简单的Web服务器 2. Tomcat剖析(二):一个简单的Servlet服务器 3. Tomcat剖析(三):连接器(1 ...
- 深入浅出Tomcat/4 - Tomcat容器
Container是一个Tomcat容器的接口,Tomcat有四种容器 · Engine · Host · Context · Wrapper Engine代表整个Ca ...
随机推荐
- Node.js微服务实践(一)
什么是微服务 微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成.系统中的各个微服务可被独立部署,各个微服务之间是松耦合的.每个微服务仅关注于完成一件任务并很好地完成该任务.在所有情况下 ...
- 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二九║ Nuxt实战:异步实现数据双端渲染
回顾 哈喽大家好!又是元气满满的周~~~二哈哈,不知道大家中秋节过的如何,马上又是国庆节了,博主我将通过三天的时间,给大家把项目二的数据添上(这里强调下,填充数据不是最重要的,最重要的是要配合着让大家 ...
- AutoStartUtil【打开自启动设置界面】
参考资料 Android6.0 打开自启动管理页面(华为.小米) Android打开自启动设置页面 Android 机型设置自启动的跳转界面 代码 注意:需要搭配<RomUtil[Android ...
- 警惕挂着开源的招牌到处坑蒙拐骗的垃圾项目,比如iBase4J
开源界,本是技术爱好者百花齐放.各显其能的地方.但是,不管什么好东西,到了这块奇葩的土地都能变了味.现在的开源界,真的是鱼龙混杂,有些开源软件,不知道是噱头喊得高,还是star刷得好,竟能凭借一身垃圾 ...
- SpringBoot整合Netty并使用Protobuf进行数据传输(附工程)
前言 本篇文章主要介绍的是SpringBoot整合Netty以及使用Protobuf进行数据传输的相关内容.Protobuf会简单的介绍下用法,至于Netty在之前的文章中已经简单的介绍过了,这里就不 ...
- 贝塞尔曲线控件 for .NET (EN)
Conmajia 2012 Updated on Feb. 18, 2018 In Photoshop, there is a very powerful feature Curve Adjust, ...
- DataTable增加行
- Git日常须知
基本操作: git init 初始化环境 git add . 管理文件 git status 查看状态 git diff 文件名 查看修改内容 git commit -m '' 提交文件 git lo ...
- MyBatis学习---逆向工程 Mybatis Generator代码生成
[目录]
- 【Linux】【MySQL】CentOS7安装最新版MySQL8.0.13(最新版MySQL从安装到运行)
1.前言 框框博客在线报时:2018-11-07 19:31:06 当前MySQL最新版本:8.0.13 (听说比5.7快2倍) 官方之前表示:MySQL 8.0 正式版 8.0.11 已发布,MyS ...