您的位置:首页 > 运维架构 > Tomcat

1、apache与tomcat的整合

2017-12-14 11:16 288 查看
简介:apache作为主流的web服务软件之一,可以作为独立的web服务器来运行,但是只能支持静态网页,对于动态网页(asp,jsp,php,cgi等)的处理则显得无能为力。tomcat也可以作为独立的web服务器来运行,但是tomcat作为java服务器,仅仅作为一个servlet容器。由于apache解释静态页面要比tomcat服务来的稳定且高效,顾将两者整合起来实现动静页面都能处理的能力。

1.1 apache+tomcat整合的好处:

1) Apache主要用来解析静态文本,如html,tomcat虽然也有此功能,但apache能大大提高效率,对于并发数较大的企业级应用,能更好的显示apache的高效率;2). Tomcat用来解析jsp,servlet等,所有的客户请求首先会发送到Apache,如果请求是静态文本则由apache解析,并把结果返回给客户端,如果是动态的请求,如jsp,apache会把解析工作交给tomcat,由tomcat进行解析(这首先要两者实现整合),tomcat解析完成后,结果仍是通过apache返回给客户端,这样就可以达到分工合作,实现负载均衡,提高系统的性能!而且因为JSP是服务器端解释代码的,这样整合可以减少Tomcat的服务开销

1.2 安装apache-tomcat

安装apache-tomcat需要jvm环境,由于本次安装tomcat采用的是tomcat9.0.2的版本,因此如果JVN环境在java EE8以下的需要升级到EE8上才行.以下是jvm软件包下载链接和安装方式,本此安装采用tar.gz包的方式,解压后放到/usr/java/目录下再配置/etc/profile环境变量即可.Jdk下载链接: http://download.oracle.com/otn-pub/java/jdk/9.0.1+11/jdk-9.0.1_linux-x64_bin.tar.gz?AuthParam=1513257490_36be8b44d015fef18ffc0758476d0a66 Tomcat 9.0.2下载链接:http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.2/bin/apache-tomcat-9.0.2.tar.gz
获取软件包
# wget http://download.oracle.com/otn-pub/java/jdk/9.0.1+11/jdk-9.0.1_linux-x64_bin.tar.gz?AuthParam=1513257490_36be8b44d015fef18ffc0758476d0a66 #wget #' target='_blank'>http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.2/bin/apache-tomcat-9.0.2.tar.gz
配置java环境变量卸载系统自带java:
# yum -y remove java*
# mv jdk-9.0.1_linux-x64_bin.tar.gz\?AuthParam\=1513257490_36be8b44d015fef18ffc0758476d0a66 jdk-9.0.1_linux-x64_bin.tar.gz
#tar zxvf jdk-9.0.1_linux-x64_bin.tar.gz
将下载的jdk-9.0.1_linux-x64_bin.tar.gz包直接解压到/usr/java/下即可,

# tar -xvf /usr/local/src/jdk-9.0.1_linux-x64_bin.tar.gz
# mkdir /usr/java
# mv jdk-9.0.1/ /usr/java/
#vim /etc/profile
export JAVA_HOME=/usr/java/jdk-9.0.1/
export JAVA_BIN=/usr/java/jdk-9.0.1/bin
export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export LD_LIBRARY_PATH=/usr/local/native/lib/
export LD_RUN_PATH=/usr/local/native/bin/
export PATH=${JAVA_HOME}bin:${LD_RUN_PATH}:$PATH:/usr/apr/bin/:/usr/apr/lib/
重载环境变量
# source /etc/profile
验证jdk版本,说明安装成功
# java -version
java version "9.0.1"
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
安装tomcat:
# tar xvf apache-tomcat-9.0.2.tar.gz
# mv /usr/local/src/ apache-tomcat-9.0.2/usr/local/tomcat
根据tomcat自身携带的sh脚本命令编辑tomcat控制脚本
#!/bin/bash
# Tomcat init script for linux
# chkconfig: 2345 96 14
#discription: Apache Tomcat Server/Jsp container
JAVA_OPTS='-server -Xms64m -Xmx128m'
CATALINA_HOME=/usr/local/tomcat
$CATALINA_HOME/bin/catalina.sh $*
为启动脚本赋予可执行权限
# chmod u+x /etc/init.d/tomcat
测试脚本,使用脚本启动tomcat:
# service tomcat start
# netstat -anptu | grep 8080
tcp        0      0 :::8080                     :::*                        LISTEN      29822/java
8080端口被监听,开启服务正常运行添加开机启动
# chkconfig --add tomcat
# chkconfig tomcat on
通过浏览器输入”192.168.31.103:8080”测试toncat web服务是否正常启动.正常访问,则tomcat搭建成功

1.3 安装httpd服务并加载mod_jk模块:

什么是mod_jk模块?mod_jk简称JK,是Apache服务器的一个可插入模块,用以为Apache或IIS服务器提供处理JSP/Servlet的能力。Apache作为一款强大的Web服务器,本身缺乏处理JSP/Servlet的功能,为了能够处理对JSP/Servlet的请求,必须使用JSP/Servlet容器,如Tomcat等。Tomcat本身也可以作为Web服务器使用,但是其功能远不及Apache强大,所以Tomcat往往作为JSP/Servlet容器使用。下载tomcat-connectors
# wget #' target='_blank'>http://mirrors.hust.edu.cn/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.42-src.tar.gz
安装apache服务器:
# yum -y install httpd httpd-devel
# service httpd restart
安装tomcat-connectors
#tar xvf tomcat-connectors-1.2.42-src.tar.gz
# cd tomcat-connectors-1.2.42-src/native/
# ./configure --with-apxs=/usr/sbin/apxs
# make
# make install
查看mod_jk.so是否已经存在
# ls /etc/httpd/modules/mod_jk.so
/etc/httpd/modules/mod_jk.so
生成mod_jk的配置文件
#cd /root/Desktop/ jakarta-tomcat-connectors-1.2.15-src/jk/conf
#cp workers.properties /etc/httpd/conf
清空并编辑配置文件/etc/httpd/conf/workers.properties
vim /etc/httpd/conf/workers.properties
添加一下内容
worker.list=worker1         #定义workers列表
worker.worker1.type=ajp13      #定义workers的类型
worker.worker1.host=localhost    #定义workers主机
worker.worker1.port=8009       #定义tomcat worker主机的监听端口
修改httpd配置文件,添加模块
# vim /etc/httpd/conf/httpd.conf
LoadModule jk_module modules/mod_jk.so
jkWorkersFile /etc/httpd/conf/workers.properties
jkMount /*.jsp worker1
重启httpd服务
# service httpd restart
# netstat -anptu | grep 80 #配置的http监听端口被监听则服务启动成功,
通过浏览器访问10.10.125.1/index.jsp,能正常访问则说明apache+tomcat整合完成
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tomcat apache jdk