首页 Linux正文

Tomcat Web服务器的搭建及性能优化

王昊 Linux 2019-11-25 354 0

Tomcat 是由 Apache 软件基金会下属的 Jakarta 项目开发的一个 Servlet 容器,按照 Sun Microsystems 提供的技术规范,实现了对 Servlet 和 JavaServer Page(JSP)的支持,Tomcat 本身也是一个 HTTP 服务器,可以单独使用,apache 是一个以 C 语言编写的 HTTP 服务器。Tomcat 主要用来解析 JSP 语言。

环境准备

#设置或停止防火墙:
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# systemctl disable firewalld.service
#关闭selinux:
临时关闭:
[root@localhost ~]# setenforce 0
永久关闭(修改配置文件):
[root@localhost ~]# vim /etc/selinux/config
改成SELINUX=disabled

安装 tomcat 之前需要安装 jdk

安装JDK

注意:安装之前需要查看下系统是否安装了openjdk,如果安装了openjdk,请先卸载,否则安装不了oracle官方的jdk

rpm -qa | grep openjdk

卸载方法:

yum remove java-* -y

解压

tar xf jdk-8u91-linux-x64.tar.gz

mv jdk1.8.0_91/ /usr/local/jdk

配置JDK需要的环境变量

vim /etc/profile

JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

使配置立即生效

source /etc/profile

查看版本

java -version

java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

安装Tomcat

cd /usr/local/

wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.27/bin/apache-tomcat-9.0.27.tar.gz

tar zxf apache-tomcat-9.0.27.tar.gz

mv apache-tomcat-9.0.27 /usr/local/tomcat

cd tomcat/bin/

./startup.sh

Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.

浏览器访问:

IP:8080

上图为默认网站页面,如何创建一个自己的网站页面呢

vim /usr/local/tomcat/conf/server.xml

末尾加入以下内容

<Context path="/" docBase="/data/webapps/www"  reloadable="true"/> 

新建发布目录及测试页面

mkdir -p /data/webapps/www

cd /data/webapps/www/

vim index.jsp

<html>
<body>
<h1> Tomcat_1 JSP Test Page</h1>
<%=new java.util.Date()%>
</body>
</html>

删除默认的内容

rm -rf /usr/local/tomcat/webapps/*

重新启动Tomcat

/usr/local/tomcat/bin/shutdown.sh

/usr/local/tomcat/bin/startup.sh

浏览器访问

IP:8080/index.jsp

Tomcat 性能优化

使用默认 tomcat 配置文件,性能很一般,所以需要对 tomcat 进行参数性能优化

主要是对以下方面进行优化

Linux 内核的优化 
服务器资源配置的优化 
Tomcat 参数优化 
配置负载集群优化

这里主要讲 tomcat 参数的优化:server.xml 文件,关闭 DNS 查询、配置最大并发等参数

vim /usr/local/tomcat/conf/server.xml

<Connector port="8080"    
           protocol="org.apache.coyote.http11.Http11NioProtocol"  //http 
           connectionTimeout="20000"  //最大连接超时时间,单位是毫秒
           redirectPort="8443"      //端口
           maxThreads="5000"        //最大并发数
           minSpareThreads="20"       //最小空闲连接
           acceptCount="1000"       //最大连接等待
           disableUploadTimeout="true"  //禁用上传超时
           enableLookups="false"    //禁用DNS查询
           URIEncoding="UTF-8" /> 

配置多个Tomcat

只需要在服务器上 cp 多个 tomcat,然后修改三个端口和发布目录,然后分别启动即可(默认的三个端口分别为shutdown端口8005、AJP端口8009、web端口8080)

cd /usr/local/

mv tomcat/ tomcat1

cp -a tomcat1/ tomcat2

cp -a tomcat1/ tomcat3

vim /usr/local/tomcat2/conf/server.xml

将原来的8005、8080、8009端口分别修改为8006、8081、8010

并修改发布目录

<Server port="8006" shutdown="SHUTDOWN">
<Connector  port="8081" protocol="HTTP/1.1"
<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />
<Context path="/" docBase="/data/webapps/www2"  reloadable="true"/>

vim /usr/local/tomcat3/conf/server.xml

同理,将端口修改为8007、8082、8011

并修改发布目录

<Server port="8007" shutdown="SHUTDOWN">
<Connector  port="8082" protocol="HTTP/1.1"
<Connector port="8011" protocol="AJP/1.3" redirectPort="8443" />
<Context path="/" docBase="/data/webapps/www3"  reloadable="true"/>

cd /data/webapps/

cp -a www/ www2

cp -a www/ www3

vim www2/index.jsp

<html>
<body>
<h1> Tomcat_2 JSP Test Page</h1>
<%=new java.util.Date()%>
</body>
</html>

vim www3/index.jsp

<html>
<body>
<h1> Tomcat_3 JSP Test Page</h1>
<%=new java.util.Date()%>
</body>
</html>

pkill java

ps -ef |grep java

root      13611   2900  0 16:29 pts/1    00:00:00 grep --color=auto java

分别启动三个Tomcat

/usr/local/tomcat1/bin/startup.sh

/usr/local/tomcat2/bin/startup.sh

/usr/local/tomcat3/bin/startup.sh

ps -ef |grep java

看一下是否有三个进程

netstat -ntl

有以下端口表明三个tomcat已成功启动

tcp6       0      0 :::8009                 :::*                    LISTEN     
tcp6       0      0 :::8010                 :::*                    LISTEN     
tcp6       0      0 :::8011                 :::*                    LISTEN     
tcp6       0      0 :::8080                 :::*                    LISTEN     
tcp6       0      0 :::8081                 :::*                    LISTEN     
tcp6       0      0 :::8082                 :::*                    LISTEN     
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN     
tcp6       0      0 127.0.0.1:8006          :::*                    LISTEN     
tcp6       0      0 127.0.0.1:8007          :::*                    LISTEN

浏览器访问

195:8080/index.jsp

IP:8081/index.jsp

IP:8082/index.jsp

三个测试页面可以正常访问表明三个Tomcat已经搭建完成

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论