Tomcat安装部署及多实例部署介绍

一、Tomcat相关简介

1.Tomcat简介
Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个servelet容器,按照Sun microsystems提供的技术规范开发,Tomcat 8实现了对servlet 3.1和Javaserver page 2.3(JSP)的支持,并提供了作为web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat附加组件等。
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
Tomcat和Nginx、Apache(httpd)、lighttpd等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Server和JSP容器,独立的Server容器是Tomcat的默认模式,不过Tomcat处理静态HTML的能力不如Nginx/Apache服务器。其他JAVA容器还有resin、weblogic、websphere等。
2.Servlet简介
Java提供的用于开发Web服务器应用程序的一个组件,运行在服务器端,由Servlet容器所管理,用于生成动态的内容。
Servlet是平台独立的Java类,编写一个Servlet,实际上就是按照Servlet规范编写一个Java类。
3.JSP简介
servlet的扩展,可以认为JSP = HTML + Java代码 + JSP标签,Servlet获取请求数据和处理数据非常方便,但是向页面输出并显示数据(html标签)非常麻烦,毫无格式。jsp显示数据非常方便,像html格式一样,但是封装数据和处理数据比较麻烦。

二、Tomcat安装

1.配置JDK环境
(1)JDK简介
java语言的软件开发工具包其中基本组件包括

javac:编译器,将源程序转成字节码。

jar:打包工具,将相关的类文件打包成一个文件。

javadoc:文档生成器,从源码注释中提取文档。

jdb:debugger,查错工具。

java:运行编译后的java程序(.class后缀的)。

appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。

Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。

Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。 

Jconsole:Java进行系统调试和监控的工具。

xtcheck:一个检测jar包冲突的工具。

apt:注释处理工具。

jhat:java堆分析工具。

jstack:栈跟踪程序。

jstat:JVM检测统计工具。

jstatd:jstat守护进程。

jinfo:获取正在运行或崩溃的java程序配置信息。

jmap:获取java进程内存映射信息。

idlj:idl-to-java编译器,将IDL语言转化为java文件。

policytool:一个GUI的策略稳健和管理工具。

jrunscript:命令行脚本运行。

(2)配置JDK环境
下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html(需要点介绍协议,下载jdk8)

[root@localhost ~]# tar -zxf jdk-8u201-linux-x64.tar.gz -C /usr/local/
[root@localhost ~]# ls /usr/local/
bin  etc  games  include  jdk1.8.0_201  lib  lib64  libexec  sbin  share  src
[root@localhost ~]# vim /etc/profile
末尾追加内容:
export JAVA_HOME=/usr/local/jdk1.8.0_201
export JRE_HOME=/usr/local/jdk1.8.0_201/jre
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
[root@localhost ~]# source /etc/profile
[root@localhost ~]# java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

或者

[root@localhost ~]# yum -y install java
[root@localhost ~]# java -version
openjdk version "1.8.0_282"
OpenJDK Runtime Environment (build 1.8.0_282-b08)
OpenJDK 64-Bit Server VM (build 25.282-b08, mixed mode)

2.部署tomcat

[root@localhost ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.64/bin/apache-tomcat-8.5.64.tar.gz
[root@localhost ~]# tar zxf apache-tomcat-8.5.64.tar.gz -C /usr/local/

3.启动Tomcat

[root@localhost ~]# /usr/local/apache-tomcat-8.5.64/bin/startup.sh
Using CATALINA_BASE:   /usr/local/apache-tomcat-8.5.64
Using CATALINA_HOME:   /usr/local/apache-tomcat-8.5.64
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.64/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/apache-tomcat-8.5.64/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.64/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

4.查看端口

[root@localhost ~]# netstat -anput | grep 8080
tcp6       0      0 :::8080                 :::*                    LISTEN      22899/java

5.查看进程

[root@localhost ~]# ps -ef | grep tomcat
root      48233      1  4 09:57 pts/0    00:00:02 /usr/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-8.5.64/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/apache-tomcat-8.5.64/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.64/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/apache-tomcat-8.5.64 -Dcatalina.home=/usr/local/apache-tomcat-8.5.64 -Djava.io.tmpdir=/usr/local/apache-tomcat-8.5.64/temp org.apache.catalina.startup.Bootstrap start
root      49620   1511  0 09:58 pts/0    00:00:00 grep --color=auto tomcat

6.查看日志

[root@localhost ~]# tail -1 /usr/local/apache-tomcat-8.5.64/logs/catalina.out
05-Apr-2021 09:57:31.854 信息 [main] org.apache.catalina.startup.Catalina.start Server startup in 1449 ms

7.本机访问测试

[root@localhost ~]# curl -I 127.0.0.1:8080
HTTP/1.1 200 
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Mon, 05 Apr 2021 02:01:36 GMT

8.tomcat目录介绍
(1)总目录

[root@localhost ~]# cd /usr/local/apache-tomcat-8.5.64/
[root@localhost apache-tomcat-8.5.64]# tree -L 1
.
├── bin    #启动、关闭Tomcat或其他功能的脚本(.bat和.sh)
├── BUILDING.txt
├── conf    #配置Tomcat的XML及DTD文件
├── CONTRIBUTING.md
├── lib    #存放web应用能访问的JAR包
├── LICENSE
├── logs    #Catalina和其他web应用程序的日志文件
├── NOTICE
├── README.md
├── RELEASE-NOTES
├── RUNNING.txt
├── temp    #临时文件
├── webapps    #Web应用程序根目录
└── work    #产生有JSP编译出的Servlet的.java和.class文件

7 directories, 7 files

(2)webapps目录

[root@localhost apache-tomcat-8.5.64]# cd webapps/
[root@localhost webapps]# ll
总用量 4
drwxr-x--- 15 root root 4096 3月  19 10:46 docs    #tomcat帮助文档
drwxr-x---  7 root root   99 3月  19 10:46 examples     #web应用
drwxr-x---  6 root root   79 3月  19 10:46 host-manager    #主机管理
drwxr-x---  6 root root  114 3月  19 10:46 manager    #管理
drwxr-x---  3 root root  223 3月  19 10:46 ROOT    #默认网站根目录

(3)bin目录

[root@localhost webapps]# cd ../bin/
[root@localhost bin]# ls
bootstrap.jar                 configtest.sh     startup.sh
catalina.bat                  daemon.sh         tomcat-juli.jar
catalina.sh                   digest.bat        tomcat-native.tar.gz
catalina-tasks.xml            digest.sh         tool-wrapper.bat
ciphers.bat                   setclasspath.bat  tool-wrapper.sh
ciphers.sh                    setclasspath.sh   version.bat
commons-daemon.jar            shutdown.bat      version.sh
commons-daemon-native.tar.gz  shutdown.sh
configtest.bat                startup.bat
脚本作用
startup.sh开启tomcat脚本
shutdown.sh关闭tomcat脚本
catalina.sh核心管理脚本,以后jvm优化参数及相关配置,修改tomcat启动参数

9.启动和关闭tomcat
脚本方式:

/usr/local/apache-tomcat-8.5.64/bin/startup.sh

/usr/local/apache-tomcat-8.5.64/bin/shutdown.sh

或者

/usr/local/apache-tomcat-8.5.64/bin/catalina.sh start

/usr/local/apache-tomcat-8.5.64/bin/catalina.sh stop

三、多实例

1.一个主机上运行多个Tomcat

[root@localhost ~]# cp -rp /usr/local/apache-tomcat-8.5.64/ /usr/local/apache-tomcat-8.5.64-2
[root@localhost ~]# vim /usr/local/apache-tomcat-8.5.64-2/conf/server.xml
修改实例停止端口原来是8005 这个改成8006
<Server port="8006" shutdown="SHUTDOWN">
修改web服务器端口原来是8080/8443 改成8081/8444
    <Connector port="8081" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8444" />
此项是被禁用的,如果启用则修改连接器端口原来为8009/8443  改成8010/8444
    <!--
    <Connector protocol="AJP/1.3"
               address="::1"
               port="8009"
               redirectPort="8443" />
    -->

2.启动第二个实例

[root@localhost ~]# /usr/local/apache-tomcat-8.5.64-2/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/apache-tomcat-8.5.64-2
Using CATALINA_HOME:   /usr/local/apache-tomcat-8.5.64-2
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.64-2/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/apache-tomcat-8.5.64-2/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.64-2/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

3.查看端口

[root@localhost ~]# ss -anpult | grep java
tcp    LISTEN     0      1        [::ffff:127.0.0.1]:8005               [::]:*                   users:(("java",pid=48233,fd=65))
tcp    LISTEN     0      1        [::ffff:127.0.0.1]:8006               [::]:*                   users:(("java",pid=86950,fd=66))
tcp    LISTEN     0      100    [::]:8080               [::]:*                   users:(("java",pid=48233,fd=54))
tcp    LISTEN     0      100    [::]:8081               [::]:*                   users:(("java",pid=86950,fd=54))

4.查看进程

[root@localhost ~]# ps -ef | grep tomcat
root      48233      1  0 09:57 pts/0    00:00:06 /usr/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-8.5.64/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/apache-tomcat-8.5.64/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.64/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/apache-tomcat-8.5.64 -Dcatalina.home=/usr/local/apache-tomcat-8.5.64 -Djava.io.tmpdir=/usr/local/apache-tomcat-8.5.64/temp org.apache.catalina.startup.Bootstrap start
root      86950      1  4 10:22 pts/0    00:00:03 /usr/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-8.5.64-2/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/apache-tomcat-8.5.64-2/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.64-2/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/apache-tomcat-8.5.64-2 -Dcatalina.home=/usr/local/apache-tomcat-8.5.64-2 -Djava.io.tmpdir=/usr/local/apache-tomcat-8.5.64-2/temp org.apache.catalina.startup.Bootstrap start
root      88467   1511  0 10:23 pts/0    00:00:00 grep --color=auto tomcat

5.本机访问测试

[root@localhost ~]# curl -I 127.0.0.1:8081
HTTP/1.1 200 
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Mon, 05 Apr 2021 02:25:33 GMT
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值