jk+apache+tomcat整合 总结

本文详细介绍了如何将Apache与Tomcat整合,实现负载均衡和集群功能。通过Apache的mod_jk模块,配置workers.properties和httpd.conf文件,实现了静态资源由Apache处理,动态资源如JSP由Tomcat处理。此外,还提供了负载均衡的配置步骤,通过调整worker的平衡因子,实现在多个Tomcat实例间的请求分配。最后,探讨了如何配置Tomcat以实现session复制,确保高可用性。
摘要由CSDN通过智能技术生成

   需求需要这样的一个web服务器:既能处理jsp,php,asp,cgi等多种脚本页面,同时要具有集群、负载均衡等功能。其次,现在一个公网ip地址非常宝贵,往往需要在一个ip地址上提供多个站点服务。

 

         为此,有必要将asp,jsp,php 等整合在同一个web服务器中,并实现more web per IP功能。我之前只用过IIs 和tomcat,对其他的最多只是了解而不熟悉,更谈不上用过。突然面对这样一个需求,不知道从何下手。在师傅的指导和百度了N下之后,决定采用apache+tomcat+iasp+php来整合实现。

 

         这里我主要介绍下tomcat与apache的整合,因为在这一块上,花了我很长时间。从查看百度和其他一些论坛上的文章,然后照例自己动手修改、测试,到从头阅读apache官方文档,然后再修改、再测试,一工花了我整整四个工作日。四天就那样一直无聊地修该、测试,测试、修改,再测试、再修改... 还好最终成功了,否则我要疯了。

 

         回头来看,其实很简单,关键是博客、论坛里面的文章不权威,有的实例确实可能正确,但是不知道他们为什么要那么做,而为什么不这么做,还有些文章则完全就是为了资源而分东拼西凑忽悠人。受骗之后决定去从头阅读官方英文文档,然后再做测试,这才是对我测试成功的最大帮助。

 

           现在开始重点。tomcat与apache整合,实现负载均衡、tomcat集群功能的必要性:tomcat主要是为Java而写,它能处理JSP以及servlet,但是它在处理静态页面、.jpg,.gif等静态文件上却永不如apache。如果把所有web元素都抛给tomcat来处理,当数据量庞大的时候,tomcat就会显得迟钝,僵死。整合后,可以让tomcat来处理jsp文件,其他的静态文静则由apache来处理。对于访问量很大的网站,一个tomcat已经不能承担,它需要多个tomcat来协助处理数据,即需要负载均衡、tomcat集群。而tomcat集群还有个好处是当你与之初建立起会话的tomcat失去链接或者是该故障tomcat死机之后,你的业务会平稳地飘到集群中其他的tomcat上去执行,而不会丢失数据。

 

           下面将是详细的配置,先是一步步地完成 apache+tomcat整合,负载均衡、tomcat集群功能,然后在给出了一个我测试成功的综合实例。这既是我自己忙了几天后的总结,贴出来也是跟大家分享,希望对需要的人有点帮助。 其次,通过这之后,我觉得也建议大家看东西最好还是先看官方文档,那才是最全面,最权威的东西,其他都是浮云。

 

 

万能WEB服务器整合笔记

 

一环境:

Windows 7/windows server 2008

Jdkjava_ee_sdk-6u1-jdk-windows.exe

Tomcatapache tomcat6.0.18.ZIP)(免安装包,只需配置环境变量)

Apachehttpd-2.2.17-win32-x86-no_ssl.msi

Jkmod_jk-1.2.31-httpd-2.2.3.so)(同时下载相同jk版本的source文件)   

Jk的源文件(tomcat-connectors-1.2.31-src.zip

二首要工作

1.       安装JDK,并配置环境变量(path= %java_home%/bin;%java_home%/jre/bin; classpath=%java_home%/lib/dt.jar; %java_home%/lib/tools.jar

2.       安装tomcat。解压apache tomcat6.0.18.ZIP 到安装目录,配置环境变量(classpath= %tomcat_home%/bin;

3.       安装apache

 安装完后分别测试,确保tomcatapache都能正常运行。

JSP的整合

tomcat+jk+apache 整合

   (以我的安装目录为例来讲。ApacheD:/Apache2.2  TomcatD:/apache-tomcat-6.0.18)

步骤:

1.       分别解压jk的安装包和资源包,将安装包下的xxx.so文件重命名为mod_jd.so并复制到D:/Apache2.2/manual文件夹中。将资源包下面conf文件夹下面的httpd-jk.confworker.properties文件复制到D:/Apache2.2/conf文件夹中。

2.       打开D:/Apache2.2/conf 目录下的apache配置文件httpd.conf,在文件中找到Include conf/extra/httpd-vhosts.conf 代码,并将其前面的注释去掉(去掉#)。

3.       打开D:/Apache2.2/conf/extra目录下的httpd-vhosts.conf文件,在文件中找到NameVirtualHost *:80代码,然后在其上面一行添加代码:Include conf/httpd-jk.conf(既把这个文件加载进去)。再在该文件的最后添加一个VirtualHost ,代码如下:

 <VirtualHost *:80>

 ServerAdmin webmaster@dummy-host2.storm.com  #可以随便写

DocumentRoot "C:/www/zcglxt"                  #工程目录

ServerName   www.zcglxt.com                #访问站点的域名

    ServerAlias  172.31.10.168                    #域名别名

    ErrorLog "logs/dummy-host2.storm.com-error.log"   #日志文件

    CustomLog "logs/dummy-host2.storm.com-access.log" common #日志文件

# All requests go to tomcat1  by default

  JkMount /*  tomcat1         #tomcat1是随后workers.properties文件中的一实例

# JkMount /*  tomcat1 表示把所有请求都抛给tomcat1处理

  # Serve html, jpg and gif using httpd

  JkUnMount /*.html  tomcat1 

#  JkUnMount /*.html表示所有的.html都不抛给tomcat1,Apache自己处理。

  JkUnMount /*.jpg  tomcat1                                                                                                                             

  JkUnMount /*.gif   tomcat1

 <Directory "C:/www/zcglxt">   

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值