Tomcat 项目部署、账户配置、状态监测
tomcat部署项目
方式一、自动部署(最常用)
直接把war包或部署的文件夹放到webapps下。
tomcat启动后会自动监听webapps下的文件|目录,放入打包好的项目会自动部署,移除打包好的项目会自动卸载,在已部署的项目中新增文件、删除文件、修改文件,都会自动同步,无需重启tomcat。
方式二、xml文件部署
conf下新建文件夹Catalina,Catalina下新建文件夹localhost,localhost下新建一个xml文件,在xml文件中配置部署信息。
方式三、控制台部署
tomcat首页 -> Manager App
Tomcat账户配置
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
第三项需要admin-gui权限:
<role rolename="admin-gui"/>
<user username="tomcat" password="s3cret" roles="admin-gui"/>
在conf/tomcat-users.xml中配置用户:
<?xml version="1.0" encoding="UTF-8"?> <tomcat-users xmlns="http://tomcat.apache.org/xml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
version="1.0"> <role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="chy" password="abcd" roles="manager-gui,admin-gui"/> </tomcat-users>
tomcat状态监测
点击第一项Server Status:
主要关注3个点:
- JVM中3个年代对象的内存占用
- ajp的使用情况。ajp协议负责与其它web容器通信(apache、tomcat、nginx等)
- http的使用情况。http协议负责与客户端建立连接,接收客户端的请求、返回响应。
ajp、http的最大线程数是可以设置的,默认值都是200,这个要根据机器的性能、并发量综合来考虑|设置。
点击第二项Manager App:
4个关注的点:
- 一行即一个web应用,/xx是映射路径,点击可转到该应用的首页。
前5个对应tomcat自带的5个webapp,/对应root应用,这5个组成了tomcat的控制台,如果不使用控制台,可以将这5个项目删掉,提升tomcat的启动速度、减少tomcat的资源占用。
- 可以部署项目
- 可以启动、停止、重新加载、卸载某个webapp
- 可以设置session的过期时间,默认是30min。
session过期是指session闲置30min,就会被删除,失去该session中的全部数据。
session钝化是指session有效期内(session未过期),某些session闲置时间达到指定值(比如5min),就序列化到硬盘,需要时反序列化到内存,恢复。和session过期不是一个概念。
session的过期时间也可以在conf/web.xml中配置:
<!-- ==================== Default Session Configuration ================= -->
<!-- You can set the default session timeout (in minutes) for all newly -->
<!-- created sessions by modifying the value below. --> <session-config>
<session-timeout></session-timeout>
</session-config>
以上代码是conf/web.xml中的默认配置。控制台修改session的过期时间,实质是修改web.xml中的配置。
Tomcat 项目部署、账户配置、状态监测的更多相关文章
- linux系统tomcat项目部署和tomcat访问日志
一.只用ip地址访问 先把端口号改成80,然后用 <Host name="localhost" appBase="webapps" 137 ...
- Tomcat项目部署问题记录
Tomcat项目部署问题记录 1. -bash: ./startup.sh: Permission denied 问题: 新装tomcat后,执行启动命令会出现 -bash: ./startup.sh ...
- ide的tomcat的部署和配置
关于intellij ide的tomcat的部署和配置 1.下载zip版的Tomcat 7,并解压.下载地址 2.在IDEA中配置Tomcat 7 在idea中的Settings(Ctrl+Alt ...
- Tomcat项目部署的三种方法
第一种方法如下:直接把我们的项目文件夹放到tomcat里面,在这里我自己做的是一个测试项目oa,如图 启动tomcat,打开浏览器,输入localhost/oa 即可打开你的文件,注意 :访问的时候 ...
- Tomcat项目部署方式
一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中 Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JS ...
- Javaweb Tomcat 项目部署方式
一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中 Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JSP ...
- Tomcat服务部署及配置
Tomcat服务部署 1.环境准备 systemctl stop firewalld setenforce 0 2.安装jdk cd /opt 将jdk和tomcat软件包拖入当前目录下进行解压 rp ...
- 写了个关于tomcat项目部署脚本 shell
#!/bin/bash tomcat_project_path=" /server/tomcat" tomcat_cp_path="/root/tools/apache- ...
- 解释Eclipse下Tomcat项目部署路径问题(.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps)
配置eclipse的开发环境,配置jdk的安装路径和tomcat安装路径.在eclipse下建立Dynamic Web Project工程zhgy,在使用eclipse中new一个tomcat,通过启 ...
随机推荐
- httpClient爬虫
package httpClient.client; import java.io.File; import java.io.IOException; import java.io.InputStre ...
- spring cloud oauth2搭建认证中心与资源中心
一 认证中心搭建 添加依赖,如果使用spring cloud的话,不管哪个服务都只需要这一个封装好的依赖即可 <dependency> <groupId>org.springf ...
- springboot-mybatis配置问题
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题
- python实现一个客户端与服务端的通信
函数介绍 Socket对象方法: 服务端: 函数 描述 .bind() 绑定地址关键字,AF_INET下以元组的形式表示地址.常用bind((host,port)) .listen() 监听TCP,可 ...
- Java并发编程(二):volatile关键字
volatile是Java虚拟机提供的轻量级的同步机制.volatile关键字有如下两个作用,一句话概括就是内存可见性和禁止重排序. 1)保证被volatile修饰的共享变量对所有线程总是可见的,也就 ...
- C#中? 和 ??的区别
背景 最近在调试C#项目的时候,发现一个比较关于??的特殊用法,当时把我给惊到了,所以特意用这篇短短的笔记来记录一下我的解惑过程: 示例代码: showsomething(isNameNull ?? ...
- 使用Gradle自动创建Java项目结构
D:\N3verL4nd\Desktop\java>tree 卷 本地磁盘 的文件夹 PATH 列表 卷序列号为 00000200 0006:08B0 D:. ├─.gradle │ ├─3.4 ...
- Codeforces_842
A.枚举一个区间,判断是否有数符合. #include<bits/stdc++.h> using namespace std; long long l,r,x,y,k; int main( ...
- Codeforces_812
A. 每条人行道有六条车道会撞到. #include<bits/stdc++.h> using namespace std; ],b[],c[],d[]; int main() { ios ...
- CCF_201604-3_路径解析
没有用stack来写,直接用了字符串和指针,过程有点复杂的.首先对读入的每一个路径,判断它是绝对路径或者相对路径,然后确定起始的路径,然后继续一位位的判断,"//","/ ...