tomcat 和apache的整合的方法及配置(二)

简介:

第三种方法是

 用的是jk

 在 用jk进行整合apachetomcat时,jk的配置最关键的是三个文件,分别是

  

 

1 httpd.conf

    apache 服务器的配置文件,用来加载jk模块以及指定jk的配置文件信息的

2 workers.porperties

    tomcat服务器的连接定义文件

3 uriworkermap.properties

  URI映射文件,用来指定哪些URLTomcat 处理,当然您也可以直接在httpd.conf   中配置这些URI,但是独立这些配置的优点是JK模块定期更新该文件的内容,使得我们修改配置的时候无需重新启动Apache 服务器

安装连接器

 #tar xvf tomcat-connectors-1.2.28-src.tar.gz

 #cd  tomcat-connectors-1.2.28-src

 #cd native

 #./configure --with-apxs=/usr/local/apache/bin/apxs --with-java-home=/usr/java/

#make && make install

 

2编辑apache的配置文件

  #vim httpd.conf

  在其尾部添加

Include  conf/mod_jk.conf并保存

创建文件mod_jk.conf文件

   #vim mod_jk.conf

   #Load mod_jk module

LoadModule jk_module modules/mod_jk.so

#Where to find workers.properties

JkWorkersFile conf/workers.properties

#Where to find uriworkermap.preperties

JkMountFile conf/uriworkermap.properties

#Where to put jk logs

JkLogFile logs/mod_jk.log

#Set the jk log level [debug/error/info]

JkLogLevel info

#Select the log format

JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

#JkOptions indicate to send SSL KEY SIZE,

JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

#JkRequestLogFormat set the request format

JkRequestLogFormat "%w %V %T"

JkShmFile logs/mod_jk.shm

HostnameLookups Off

创建workers.properties 文件

        #vim    workers.properties

#list the workers by name

 

worker.list=loadBalancer,status

#################tomcat1##########

worker.tomcat1.port=8009

worker.tomcat1.host=localhost :可以换成IP地址

worker.tomcat1.type=ajp13

worker.tomcat1.lbfactor=1

worker.tomcat1.cachesize=100

worker.tomcat1.cache_timeout=600

worker.tomcat1.socket_keepalive=120

worker.tomcat1.socket_timeout=300

worker.tomcat1.connect_timeout=0

worker.tomcat1.reply_timeout=30000

worker.tomcat1.recovery_options=0

worker.tomcat1.retries=1

####################tomcat2#############

worker.tomcat2.port=8009

worker.tomcat2.host=192.168.2.213

worker.tomcat2.type=ajp13

worker.tomcat2.lbfactor=1

worker.tomcat2.cachesize=100

worker.tomcat2.cache_timeout=600

worker.tomcat2.socket_keepalive=120

worker.tomcat2.socket_timeout=300

worker.tomcat2.connect_timeout=0

worker.tomcat2.reply_timeout=30000

worker.tomcat2.recovery_options=0

worker.tomcat2.retries=1

############LoadBalancer############

worker.retries=3

worker.loadBalancer.type=lb

worker.loadBalancer.balance_workers=tomcat ,tomcat2

worker.loadBalancer.sticky_session=1

worker.status.type=status

并保存,应为我用的是两台机器,配置tomcat集群,如果是用同一台机器配置tomcat集群的话只需要把端口改为其他端口以防止端口冲突

  在最后配置了一个类型为statusworker。这是用来监控JK本身的模块,当然有了这桑worker 还是不够的,还需要告诉JK,其中的哪些worker 是可用的所以就配置了worker.list=loadBalancerstatus

 

 

 

 

 

配置URI的映射,需要指定连接是由Tomcat处理的,哪些是由apache直接处理的,

# uriworkermap.properties

    /*=loadBalancer #mapping the url /

/jkstatus=status

/*.htm=loadBalancer

/*.jpg=loadBalancer

/*.png=loadBalancer

/*.html=loadBalancer

/*.jsp=loadBalancer

/*.gif=loadBalancer

/*/servlet/*=loadBalancer

 

 注: 所有的请求都是由loadBalancer这个worker进行处理的,但是有几个例外,/jkstatus请求是由status这个worker处理的。另外这个配置中的每一行数据前面的叹号,表示接下来的URI不是由JK进行处理的,是由apache直接处理所有的图片,css文件,js文件以及静态html文本文件

配置 tomcat 集群

 需改tomcat的主配置文件

  #cd /usr/local/tomcat/conf/

  #vim  server.xml

首先查找

  <Engin  name=”Catalina” defaultHost=”localhost” jvmRoute=”tomcat2”>

应为是创建的tomcat集群,因此需要把去掉<Cluster> 的注释

修改Cluster 节点信息

   在不同主机上的Cluster 的节点

     <Membership

                className="org.apache.catalina.cluster.mcast.McastService"

                mcastBindAddress="192.168.2.154"

                mcastAddr="224.0.0.1"

                mcastPort="45564"

                mcastFrequency="500"

                mcastDropTime="3000"/>

 

            <Receiver

                className="org.apache.catalina.cluster.tcp.ReplicationListener"

                tcpListenAddress="192.168.2.154"

                tcpListenPort="4001"

                tcpSelectorTimeout="100"

                tcpThreadCount="6"/>

 

 

 

~     <Membership

                className="org.apache.catalina.cluster.mcast.McastService"

                mcastBindAddress="192.168.2.213"

                mcastAddr="224.0.0.1"

                mcastPort="45564"

                mcastFrequency="500"

                mcastDropTime="3000"/>

 

            <Receiver

                className="org.apache.catalina.cluster.tcp.ReplicationListener"

                tcpListenAddress="192.168.2.213"

                tcpListenPort="4001"

                tcpSelectorTimeout="100"

                tcpThreadCount="6"/>        

 

如果是在同一台主机上配置的是tomcat集群,需要把tcpListenPort的端口改掉,

   <Connector port="8080" maxHttpHeaderSize="8192"

               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

               enableLookups="false" redirectPort="8443" acceptCount="100"

               connectionTimeout="20000" disableUploadTimeout="true" />  

       <Connector port="8009"

               enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />

等端口改掉,防止在同一台主机上的tomcat的端口冲突

修改web.xml 文件并在</web-app>前面添加

   <distributable/>

注:做tomcat集群必须配置该项,否则用户的session就无法正常使用

 

 

  9 注意事项

1.需要开启网卡的组播地址

   #route add –net 224.0.0.0 netmask 240.0.0.0 dev eth0

 

查看端口netstat –antl | grep 4001

3测试广播

  # java -cp tomcat-replication.jar MCaster 224.0.0.1 45564 Terminal1
#java -cp tomcat-replication.jar MCaster 224.0.0.1 45564 Terminal2

 

10 重启apachetomcat 浏览:http://localhost 出现的是一个小猫则说明配置成功










本文转自 freehat08 51CTO博客,原文链接:http://blog.51cto.com/freehat/370456,如需转载请自行联系原作者
相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
2月前
|
Java 应用服务中间件 Apache
简介Nginx,Tomcat和 Apache
简介Nginx,Tomcat和 Apache
简介Nginx,Tomcat和 Apache
|
1月前
|
SQL Apache HIVE
一文彻底掌握Apache Hudi的主键和分区配置
一文彻底掌握Apache Hudi的主键和分区配置
60 0
|
1月前
|
XML 应用服务中间件 Apache
Tomcat AJP连接器配置secretRequired=“true“,但是属性secret确实空或者空字符串,这样的组合是无效的。
Tomcat AJP连接器配置secretRequired=“true“,但是属性secret确实空或者空字符串,这样的组合是无效的。
|
2月前
|
Java 程序员 API
Springboot-swagger配置(idea社区版2023.1.4+apache-maven-3.9.3-bin)
Springboot-swagger配置(idea社区版2023.1.4+apache-maven-3.9.3-bin)
58 1
|
2月前
|
前端开发 Java 数据库连接
Springboot-MyBatis配置-配置端口号与服务路径(idea社区版2023.1.4+apache-maven-3.9.3-bin)
Springboot-MyBatis配置-配置端口号与服务路径(idea社区版2023.1.4+apache-maven-3.9.3-bin)
33 0
|
1月前
|
安全 Linux Apache
Apache代理服务器搭建和配置
Apache代理服务器搭建和配置
|
10天前
|
前端开发 Java 应用服务中间件
Springboot对MVC、tomcat扩展配置
Springboot对MVC、tomcat扩展配置
|
4天前
|
运维 Java 应用服务中间件
Tomcat详解(七)——Tomcat使用https配置实战
Tomcat详解(七)——Tomcat使用https配置实战
12 4
|
18天前
|
Java 应用服务中间件
Springboot启动的时候初始化的线程池默认配置tomcat
Springboot启动的时候初始化的线程池默认配置tomcat
12 1
|
1月前
|
XML Java Apache
Apache Flink自定义 logback xml配置
Apache Flink自定义 logback xml配置
147 0

热门文章

最新文章

推荐镜像

更多