apache mod_jk

  1. Tomcat与Apache整合(mod_jk):
  2. 从Tomcat权威指南中的测试数据,我们不难发现,对于静态页面的数据,Tomcat的处理速度比Apache要快很多,
  3. 所以为什么要整合 apache?虽然在处理静态页面速度上比Apache快,但是Tomcat经不起大的并发量,容易死。为此,我们就需要Apache,虽然Apache的速度要慢一
  4. 些,但能承受的起大的并发量。因此,有了本文。
  5. 三种负载:
  6. mod_proxy_http 是 APAHCE 的 HTTP proxy,对静态页面还好,对动态页面效果不佳。
  7. mod_proxy_ajp ,  是 APACHE 的 AJP 的 proxy, 好像是 apache 2.2 以后的版本才有(最好还是去对文档看看),只支持 AJP 13
  8. mod_jk ,是 tomcat 的 apache 扩展 module(tomcat-connectors),可支持 AJP 12/13,JNI 以及 Loadblance.
  9. 简单多就是跟proxy 效果虽然差不多但不是一个起跑线。
  10. 整个思路: 
  11. 1、安装Apache 
  12. 2、安装tomcat 
  13. 3、安装mod_jk 
  14. 4、加载mod_jk 
  15. 5、关闭tomcat的侦听端口 
  16. 6、应用分离(静态与动态页面分离)
  17. 环境介绍:
  18. OS:CentOS 5.7
  19. SOFT:Tomcat 6.0+JDK 1.6+Apache 2.2
  20. 编译安装apache
  21. # ./configure --prefix=/usr/local/apache2  --enable-proxy-balancer \
  22. --enable-proxy-http --enable-proxy-connect  --enable-proxy \
  23. --enable-rewrite --enable-proxy-ajp
  24. 中间曾发生过,make失败的情况,最后发现是部分文件的所有者没有变为root,造成失败!
  25. # make && make install
  26. 编译模块mod_jk:
  27. # tar -xzf tomcat-connectors-1.2.32-src.tar.gz
  28. # cd tomcat-connectors-1.2.32-src/
  29. # cd native/
  30. # ./configure --with-apxs=/usr/local/apache2/bin/apxs
  31. # make && make install
  32. # ll /usr/local/apache2/modules/mod_jk.so
  33. -rwxr-xr-x 1 root root 1076923 Feb 20 19:14 /usr/local/apache2/modules/mod_jk.so
  34. 加载模块mod_jk:
  35. # vim /usr/local/apache2/conf/httpd.conf
  36. LoadModule jk_module modules/mod_jk.so
  37. JkWorkersFile /usr/local/apache2/conf/workers.properties
  38. JkMountFile   /usr/local/apache2/conf/uriworkermap.properties
  39. JkLogFile /usr/local/apache2/logs/mod_jk.log
  40. JkLogLevel info
  41. JkLogStampformat "[%a %b %d %H:%M:%S %Y]"
  42. 建立相关定义的文件
  43. # touch /usr/local/apache2/conf/workers.properties
  44. # touch /usr/local/apache2/conf/uriworkermap.properties
  45. # touch /usr/local/apache2/logs/mod_jk.log
  46. # cat workers.properties   #定义tomcat主机
  47. worker.list=tomcat2
  48. worker.tomcat2.type=ajp13
  49. worker.tomcat2.host=localhost
  50. worker.tomcat2.port=8009
  51. worker.tomcat2.lbfactor=1
  52. # cat uriworkermap.properties  #定义tomcat处理的文件类型,tomcat不处理的由apache来处理。
  53. /*=tomcat2
  54. !/*.jpg=tomcat2
  55. !/*.gif=tomcat2
  56. !/*.png=tomcat2
  57. !/*.bmp=tomcat2
  58. !/*.html=tomcat2
  59. !/*.htm=tomcat2
  60. !/*.swf=tomcat2
  61. !/*.css= tomcat2
  62. !/*.js= tomcat2
  63. 关闭tomcat的侦听商品起见(主要是为安全考虑)
  64. <!--
  65. <Connector port="8080" protocol="HTTP/1.1"
  66. connectionTimeout="20000"
  67. redirectPort="8443" />
  68. -->
  69. 应用分离:
  70. 将apache的文档目录修改到/data/webapps,将tomcat的目录修改到/data/webapps
  71. Apache的修改文档目录位置:
  72. DocumentRoot "/data/webapps"
  73. ......
  74. <Directory "/data/webapps">
  75. tomcat修改的值:
  76. <Host name="localhost"  appBase="/data/webapps"
  77. unpackWARs="true" autoDeploy="true"
  78. xmlValidation="false" xmlNamespaceAware="false">
  79. 完成以上部署之后,我们就可以启动apache、tomcat了。访问http://localhost来看看!
  80. 如何判断,页面是真的分离了呢? 通过不存在的页面,来看报错信息就行了。
  81. 如何确认,mod_jk真正被加载了?
  82. 方法:查看mod_jk的日志。如果出现:
  83. [info] init_jk::mod_jk.c (3252): mod_jk/1.2.32 () initialized 就表明它已经被正常的加载了。
  1. 我不认为,安装完就结束了,其实它只是另一个开始而已。
  2. 关于虚拟机的部分:
  3. 以上操作只是对一台机器的动静分离,如果是在某台机器上,有多个虚拟机,并且各自的路径不一样怎么办?
  4. 这个问题,只需要通过在每个虚拟机里定义相应的uriworkermap.properties文件就行了。
  5. <VirtualHost *>
         ServerAdmin [email protected]
         DocumentRoot /data/www
         ServerName 192.168.1.8
         ErrorLog logs/error_log
         CustomLog logs/access_log common
         JkMountFile  conf/uriworkermap.properties
    </VirtualHost>
    
时间: 2024-10-12 16:59:15

apache mod_jk的相关文章

通过Apache+mod_JK+Tomcat集群实现负载均衡

通过Apache+mod_JK+Tomcat集群实现负载均衡 1.概念 通过Apache+mod_JK+Tomcat集群搭建起来的环境主要用来实现负载均衡和高可用性.使用apache作为反向代理服务器实现负载均衡,使用mod_jk可以实现节点的故障恢复功能,达到高可用性.使用tomcat集群功能实现sessionID共享复制.用户访问数据在到达apache后,如果是静态内容,直接由apache处理,如果是动态请求,就通过mod_jk调用后端的一台tomcat服务器去处理请求,可以通过黏性Sess

使用Apache + mod_jk + tomcat来实现tomcat集群的负载均衡出现的无法加载mod_jk.conf文件的问题

用Apache + mod_jk + tomcat来实现tomcat集群的负载均衡的 如果出现了问题,可以用cmd  cd到Apache安装文件的bin下,运行httpd文件,错误信息就会打印出来. 我这里出现的问题是  Include conf/mod_jk.conf无法加载该配置文件(英文翻译过来就是这个问题) 为什么呢? 经过反复的检查发现是我建立的关于mode_jk.conf文件跟work.properties文件格式不对, 经过检查,用文本文件创建了这两个文件之后,文件的后缀名都是.c

Tomcat集群搭建超详细(apache+mod_jk+tomcat)

TOMCAT集群 目录 TOMCAT集群 1 1 集群 1 1.1 什么是集群 1 1.2 集群的特性 1 1.3 集群的分类 1 1.4 TOMCAT集群配置的优缺点 2 1.5 APACHE+TOMCAT 2 1.6 环境说明 2 2 软件安装 3 2.1 安装说明 3 2.2 JDK安装 3 2.3 APACHE安装 4 2.4 TOMCAT安装 4 3 集群配置 6 3.1 APACHE+MOD_JK+TOMCAT配置 6 3.2 测试 7 4 SESSION复制 8 4.1 SESSI

使用Mod_JK链接Apache和Tomcat

There are many potential problems associated with the default configuration of mod_jk.  Let's say it is perfectly adequate for a very low traffic website, but when pushing any moderate to high load to mod_jk, there will be connection problems.  This

JBOSS通过Apache负载均衡方法一:使用mod_jk

JBOSS通过Apache负载均衡方法一:使用mod_jk   本文第一.二节分别对Linux环境下前端使用Apache以及windows环境下前端使用IIS通过AJP协议和后端的JBOSS通信实现负载均衡进行说明,第三节对相应的参数做了解释. 一.   Linux环境下Apache + mod_jk + JBOSS Apache和JBOSS使用AJP协议,利用8009端口通过mod_jk来实现通信. 1.  安装并配置apache 下载apache代码包,上传到服务器. 解开代码包 [[ema

Apache+Tomcat+mod_jk负载均衡

一.需要的软件 1.jdk1.5以上 2.Tomcat6以上 3.Apache2.2以上 ,地址http://apache.dataguru.cn//httpd/binaries/win32/ ,名称:httpd-2.2.25-win32-x86-no_ssl.msi 4.jk,地址http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.31/ ,名称mod_jk-1.2.31-httpd-

Confluence 6 使用 Apache 的 mod_jk

在 Confluence 6 及其后续版本中,不能使用 mod_jk 来做代理.这是因为 Synchrony 服务导致的这个限制. Synchrony 在协同编辑的时候需要启动,同时还不能接受 AJP 连接.请参考 Using Apache with mod_proxy 页面中的文档进行配置. 如果你没有办法切换 mod_proxy,请参考 How to configure Apache mod_jk to proxy Confluence 6.x or later 页面中的内容进行配置. ht

(nginx|apache)+tomcat 几种常见的代理实现方式或连接类型(connector type)

简单描述一下nginx两块网卡,eth1外网,eth0内网与tomcat eth0通信,用户请求静态内容由nginx直接响应,动态内容则nginx转发至后端tomcat响应 安装nginx,tomcat不再描述. nginx的配置文件如下:/etc/nginx/nginx.conf [[email protected] ~]# pnginx worker_processes 1; events { worker_connections 1024; } http { include mime.ty

Tomcat+Apache 负载均衡

1.JDK1.8和Tomcat7.0不兼容,支持Tomcat8.0. 集群架构图: 2.负载均衡:负载的基础是集群,集群就是一组连在一起的计算机,从外部看它是一个系统,各节点可以是不同的操作系统或不同的硬件构成的计算机.如一个提供Web服务的集群,对外界看来是一个大Web服务器.负载均即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求. 3.部署方法:Apache2.2+Tomcat7.0+JDK1.7+JK 主要方法:http://w