完全自主创建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 ...
随机推荐
- 分享一些 Kafka 消费数据的小经验
前言 之前写过一篇<从源码分析如何优雅的使用 Kafka 生产者> ,有生产者自然也就有消费者. 建议对 Kakfa 还比较陌生的朋友可以先看看. 就我的使用经验来说,大部分情况都是处于数 ...
- 让VS2019支持.NET Core WinForms和WPF设计器的临时办法(比微软给出的办法更方便)
参考以下代码片段,给项目添加NET Framework目标框架,切换到NET472运行时重新生成项目,然后打开设计器界面. 如果遇到设计器报错,尝试以NET472运行时为目标重新生成项目,并重新打开V ...
- 不使用 webpack,vuejs 异步加载模板
webpack 打包不会玩,整了这么个小玩具 一段 vue 绑定代码,关键点在 gmallComponent 1.异步加载外部 vue 文件(非 .vue) 2.按一定规则拆分 template.sc ...
- C#工具:MySQL忘记密码解决方法
1.进入管理员控制台停止mysql服务:net stop mysql; 2.进入mysql的安装路径,如我的安装路径为C:\Program Files\MySQL\MySQL Server 5.5,打 ...
- 对HTML5标签的认识(三)
这篇随笔继续来认识HTML标签.这次随笔主要是对<table>标签的认识和最近我学习到的一些标签来和大家分享. 一.<table>标签 <table>标签的作用主要 ...
- linux下载服务器上的文件命令-sz
语法:sz 文件 比如要下载下面这个com.zip这个压缩包 输入sz com.zip 弹出下载页面,即可开始下载文件
- 升级WIN10 (9879)后IE无响应的解决办法
身为程序猿,当然有了新系统就要尝尝鲜,有WIN8时,哥是朋友圈第一个用的,有WIN8.1时哥也是第一个升级的. 现在WIN10来了,当然也得赶紧尝尝鲜.直接下载了 9879版的预览版本安装. 要说WI ...
- Skyline基本操作模式封装
skyline基本操作模式 项目中基于skyline的浏览器插件进行二次开发,基本的业务操作模式如下: 工具栏:点击工具栏某个功能,开启操作模式. onFrame:鼠标移动预选对象,在能够拾取或者选定 ...
- python在sqlite动态创建表源码
代码之余,将开发过程中经常用的代码片段备份一下,如下的代码是关于python在sqlite动态创建表的代码,应该能对各位有所用. import sqlite3 as db conn = db.conn ...
- Serial Splitter 4.2 串口拆分说明
使用方法 有些设备和程序只能使用COM端口.如果计算机没有COM端口,或者已经被其他应用程序占用,则需要创建虚拟串行端口.在串行分配器中,我们使用虚拟串行端口驱动程序技术,它可以在系统中创建任意数量的 ...