高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

栏目: Java · 发布时间: 6年前

内容简介:Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,Tomcat本身也是一个HTTP服务器,可以单独使用,apache是一个以C语言编写的HTTP服务器。Tomcat主要用来解析JSP语言。目前最新版本为9.0。安装tomcat之前需要安装jdk (Java Development Kit) 是 Java 语言的软件开发工具包(SDK)),这里选

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

高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

一、Tomcat安装配置

安装tomcat之前需要安装jdk (Java Development Kit) 是 Java 语言的软件开发 工具 包(SDK)),这里选择JDK1.8.0_151

1)启动Centos容器

[root@localhost ~]# docker run -itd -p 6022:22 -p 80:8080 centos6.8 /bin/bash  
[root@localhost ~]# docker ps -l  
高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

2)进入容器,安装wget

[root@localhost ~]# docker exec -it 709fd5453c25 /bin/bash 
[root@709fd5453c25 /]# yum -y install wget 
高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

3)下载JDK软件包

[root@709fd5453c25 /]# wget jdk-8u151-linux-x64.tar.gz 
[root@709fd5453c25 /]# tar zxf jdk-8u151-linux-x64.tar.gz 
[root@709fd5453c25 /]# mv jdk1.8.0_151/ /usr/local/ 
高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

4)配置java环境变量,vim /etc/profile 添加如下语句:

export JAVA_HOME=/usr/local/jdk1.8.0_151 
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib 
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin 
高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

[root@709fd5453c25 /]# source /etc/profile //使环境变量立刻生效。

[root@709fd5453c25 /]# java -version //查看java版本,显示版本为1.8.0_151,证明安装成功。

高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

下载tomcat源码包,这里下载的版本为apache-tomcat-7.0.82.tar.gz,下载完后解压:

[root@709fd5453c25 /]# wget apache-tomcat-7.0.82.tar.gz

[root@709fd5453c25 /]# tar zxf apache-tomcat-7.0.82.tar.gz

[root@709fd5453c25 /]# mv apache-tomcat-7.0.82 /usr/local/tomcat

启动tomcat,命令为:/usr/local/tomcat/bin/startup.sh

高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

查看ps -ef |grep tomcat 进程及端口是否存在

高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

通过页面访问可以看到tomcat默认测试页面:(通过本机80端口映射容器的8080端口)

高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

这个画面是默认网站,怎么来创建一个自己的网站页面呢,定义自己的发布目录,方法如下:在server.xml配置文件末尾加入如下行:(附截图)

<Context path="/" docBase="/data/webapps/www" reloadable="true"/> 
高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化

在/data/webapps/www目录下,创建自己的jsp代码,重启tomcat即可访问。

延伸:Tomcat性能优化

线上环境使用默认tomcat配置文件,性能很一般,为了满足大量用户的访问,需要对tomcat进行参数性能优化,具体优化的地方如下:

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

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

maxThreads:tomcat起动的最大线程数,即同时处理的任务个数,默认值为200

acceptCount:当tomcat起动的线程数达到最大时,接受排队的请求个数,默认值为100

当然这些值都不是越大越好,需要根据实际情况来设定。可以基于测试的基础上来不断的调优分析。Server.xml里面优化如下:

<Connector port="8080" 
protocol="org.apache.coyote.http11.Http11NioProtocol" 
connectionTimeout="20000" 
redirectPort="8443" 
maxThreads="5000" 
minSpareThreads="20" 
acceptCount="1000" 
disableUploadTimeout="true" 
enableLookups="false" 
URIEncoding="UTF-8" /> 

Catalina.sh JVM参数优化,添加如下内容:

CATALINA_OPTS="$CATALINA_OPTS –Xms4000M –Xmx4000M –Xmn1000M -XX:SurvivorRatio=4 -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=82 -DLOCALE=UTF-16LE -DRAMDISK=/ -DUSE_RAM_DISK=ture -DRAM_DISK=true" 

配置多个tomcat实例,方法也很简单,只需要在服务器上cp多个tomcat,然后修改三个端口和发布目录即可,然后分别启动即可。

为了提升整个网站的性能,还需要在tomcat前面架设nginx web反向代理服务器,用以提高用户高速访问。


以上所述就是小编给大家介绍的《高级运维篇:Docker构建Tomcat Web服务器与Tomcat如何优化》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Algorithms and Theory of Computation Handbook

Algorithms and Theory of Computation Handbook

Mikhail J. Atallah (Editor) / CRC-Press / 1998-09-30 / USD 94.95

Book Description This comprehensive compendium of algorithms and data structures covers many theoretical issues from a practical perspective. Chapters include information on finite precision issues......一起来看看 《Algorithms and Theory of Computation Handbook》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具