tomcat部署及优化

Tomcat核心组件
tomcat部署及优化
Tomcat处理请求过程
tomcat部署及优化
server:tomcat实例 注意:一个JVM(Java虚拟机)只能有一个tomcat实例

service:接收请求到处理请求的所有组件的集合

service组件分为connector(连接器)和container(容器)两部分

connector负责接受用户请求和消息报文的,将消息报文发往container

engine:是一个容器,是用来将用户的请求发往它下面的虚拟主机的,engine是加载虚拟主机的一个容器

host:是虚拟主机的容器

content:管理servlet

servlet:是支持Java语言的组件

Tomcat部署步骤
将需要配置的软件包上传到服务器上,配置Java环境
tar zxf jdk-8u91-linux-x64.tar.gz -C /opt
mv /opt/jdk1.8.0_91/ /usr/local/java
cd /etc/profile.d
vim java.sh
export JAVA_HOME=/usr/local/java #设置Java根目录
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin #在PATH环境变量中添加Java根目录下的bin子目录
source java.sh             #Java.sh脚本导入到环境变量,使其生效
java -version             #查看版本

写个Java小程序,测试是否可以正常工作
vi a.java
public class a {
public static void main (String[] args) {
System.out.println(“你好,世界!!!”);
}
}
javac a.java #执行,编译成功后生成可执行文件
java a #测试,原样输出则为成功
你好,世界!!!

安装tomcattar
zxf apache-tomcat-8.5.16.tar.gz -C /opt
mv apache-tomcat-8.5.16/ /usr/local/tomcat8
/usr/local/tomcat8/bin/startup.sh #启动tomcat
netstat -anpt | grep 8080 #查看端口开启状态
tcp6 0 0 :::8080 ::???? LI 53903/java #端口开启成功状态
/usr/local/tomcat8/bin/shutdown.sh #关闭tomcat
ln -s /usr/local/tomcat8/bin/startup.sh /usr/bin/tomcatup #创建软链接,优化开启命令
ln -s /usr/local/tomcat8/bin/shutdown.sh /usr/bin/tomcatdown #创建软链接,优化关闭命令

加入测试页面,编辑配置文件并测试
mkdir -p /web/webapp1
vi /web/webapp1/index.jsp
<%@ page language=“java” import=“java.util.*” pageEncoding=“UTF-8”%>

JSP test1 page <% out.println("welcome to test site");%>
动态页面
tomcat部署及优化 #这个jsp中引入的page标签 #language表示语言是Java #import类似于Java类中的import就是把包导入进来,这样在jsp才可以调用包中的类 #pageEncoding表示页面的编码格式

tomcatdown
vi /usr/local/tomcat8/conf/server.xml

#添加
tomcatup
netstat -anpt | grep 8080

tomcat部署及优化
再配置一台tomcat并测试
ll
tar zxf jdk-8u91-linux-x64.tar.gz -C /opt
mv /opt/jdk1.8.0_91/ /usr/local/java
cd /etc/profile.d
vim java.sh
export JAVA_HOME=/usr/local/java #设置Java根目录
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin #在PATH环境变量中添加Java根目录下的bin子目录
source java.sh             #Java.sh脚本导入到环境变量,使其生效
java -version             #查看版本
vi a.java
public class a {
public static void main (String[] args) {
System.out.println(“你好,世界!!!”);
}
}
javac a.java #执行,编译成功后生成可执行文件
java a #测试,原样输出则为成功
你好,世界!!!
tar zxf apache-tomcat-8.5.16.tar.gz -C /opt
mv apache-tomcat-8.5.16/ /usr/local/tomcat8
/usr/local/tomcat8/bin/startup.sh #启动tomcat
netstat -anpt | grep 8080 #查看端口开启状态
tcp6 0 0 :::8080 ::???? LI 53903/java #端口开启成功状态
/usr/local/tomcat8/bin/shutdown.sh #关闭tomcat
ln -s /usr/local/tomcat8/bin/startup.sh /usr/bin/tomcatup #创建软链接,优化开启命令
ln -s /usr/local/tomcat8/bin/shutdown.sh /usr/bin/tomcatdown #创建软链接,优化关闭命令
mkdir -p /web/webapp2
vi /web/webapp2/index.jsp
<%@ page language=“java” import=“java.util.*” pageEncoding=“UTF-8”%>

JSP test2 page <% out.println("welcome to test site");%>
动态页面
tomcat部署及优化 #这个jsp中引入的page标签 #language表示语言是Java #import类似于Java类中的import就是把包导入进来,这样在jsp才可以调用包中的类 #pageEncoding表示页面的编码格式 tomcatdown vi /usr/local/tomcat8/conf/server.xml #添加 tomcatup netstat -anpt | grep 8080

tomcat部署及优化
tomcat虚拟主机的设置(基于域名,基于端口)

基于域名
vi /usr/local/tomcat8/conf/server.xml


省略部分内容

<Host name=“www.bbb.com” appBase=“webapps” #添加
unpackWARs=“true” autoDeploy=“true”> #添加
#添加
#添加
tomcatdown
tomcatup

tomcat部署及优化
tomcat部署及优化
基于端口
1 vi /usr/local/tomcat8/conf/server.xml
2
3 <Connector port=“8081” protocol=“HTTP/1.1”
4 connectionTimeout=“20000”
5 redirectPort=“8443” />
6
7 <Host name=“www.aaa.com” appBase=“webapps”
8 unpackWARs=“true” autoDeploy=“true”>
9
10
11
12 #再/Server前面添加
13
14
15 tomcatdown
16 tomcatup
17 netstat -anpt | grep 8080
18 netstat -anpt | grep 8081

tomcat部署及优化

tomcat部署及优化
再配置一台Nginx的服务器做动静分离

1 yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++
2 tar zxf nginx-1.6.0.tar.gz -C /opt
3 cd /opt/nginx-1.6.0/
4 ./configure
5 --prefix=/usr/local/nginx
6 --user=nginx
7 --group=nginx
8 --with-file-aio \ #同时提交多个io请求给内核
9 --with-http_stub_status_module \ #状态统计
10 --with-http_gzip_static_module \
11 --with-http_flv_module \ #支持对FLV(flash)文件的拖动播放
12 --with-http_ssl_module #支持安全证书
13
14 make && make install
15
16 useradd -M -s /sbin/nologin nginx
17 vim /usr/local/nginx/conf/nginx.conf
18 upstream tomcat_server {
19 server 20.0.0.10:8080 weight=1;
20 server 20.0.0.20:8080 weight=1;
21 } #添加
22 server {
23 listen 80;
24 server_name localhost;
25
26 #charset koi8-r;
27
28 #access_log logs/host.access.log main;
29
30 location / {
31 root html;
32 index index.html index.htm;
33 }
34 location ~ .jsp$ { #添加
35 proxy_pass http://tomcat_server;
36 }37 nginx -t
38 killall -3 nginx
39 nginx
40 netstat -anpt | grep nginx

tomcat部署及优化
tomcat部署及优化
tomcat部署及优化