背景:项目比较大,用户较多,同一时间,用户在线人数较多,为此,整体架构是lvs(2台)+keepalived(2台)+apache(N台)+tomcat(N台)

lvs负责分发请求,所有的web请求经由lvs分发到下面的apache机器,然后所有的apache都是镜像配置所有的tomcat机器,这里记录一下apache和tomcat的配置,

1、apache配置:

  httpd.conf配置,找到LoadModule的地方把咱们的mod_jk.conf的位置添加进去,至于mod_jk.so可以到网上下载一个然后加到相依的位置即可

    LoadModule jk_module /etc/httpd/modules/mod_jk.so
    Include /etc/httpd/conf/mod_jk.conf

  mod_jk.conf配置 

    JkWorkersFile conf/workers.properties
    JkLogFile logs/mod_jk.log
    JkLogLevel error
    JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
    JkRequestLogFormat "%w %V %T"
    JkMount /* loadbalancer_a#配置转发地址,和workder.properties配合使用
    JkMount /jkstatus status#配置各个状态的监控

  workers.properties配置

    worker.list=loadbalancer_a,status

    worker.cotton31.type=ajp13
    worker.cotton31.host=192.168.100.31
    worker.cotton31.port=8009
    worker.cotton31.lbfactor=1
    #server的负载分配权重,值越高,分得的请求越多
    #worker.cotton1.cachesize=1000 #配置tomcat的jk连接缓存大小 (非必要)
    #worker.cotton1.cachesize_timeout=600 # (非必要)
    #worker.cotton1.reclycle_timeout=300 # (非必要)
    #worker.cotton1.socket_keepalive=1 #防止防火墙切断未激活的网络连接(非必要)
    #worker.cotton1.socket_timeout=300 #(非必要)
    #worker.cotton1.local_worker=1 # (非必要)
    #worker.cotton1.retries=3 # (非必要)
    # 第二个tomcat_cotton
    worker.cotton32.type=ajp13
    worker.cotton32.host=192.168.100.32
    worker.cotton32.port=8009
    worker.cotton32.lbfactor=1

    worker.loadbalancer_a.type=lb
    worker.loadbalancer_a.balance_workers=cotton31,cotton32
    worker.loadbalancer_a.sticky_session=true #设置为粘性session
    worker.loadbalancer_a.sticky_session_force=false #设置当多次请求未响应,请求将转发

    worker.status.type=status#状态监控

2、tomcat设置

    1、最后一个端口ajp协议的修改如下:(下面的数值是经过压力测试之后的性对稳定的数值)

    <Connector port="8009"
    protocol="AJP/1.3"
    minSpareThreads="300"
    maxThreads="1000"
    acceptCount="1000"
    connectionTimeout="20000"
    redirectPort="8443"
    useBodyEncodingForURI="true"
    URIEncoding="UTF-8"
    enableLookups="false"
    compressableMimeType="text/html,text/xml,text/css,text/javascript,image/gif,image/jpg,image/png"/>

    2、修改engine如下,如果这个jvmRoute不添加会导致session丢失,虽然转发了,但是session不存储:

    <Engine name="Catalina" defaultHost="localhost" jvmRoute='cotton31'>

tomcat+apache的集群配置的更多相关文章

  1. 1.Apache+Tomcat负载均衡+集群配置

    1.本文Apache+Tomcat集群配置 基于最新的Apache和Tomcat,具体是2011年4月20日最新的Tomcat和Apache集群和负载均衡配置. 准备环境 Apache Apache是 ...

  2. Java应用服务器之tomcat会话复制集群配置

    会话是识别用户,跟踪用户访问行为的一个手段,通过cookie(存在客户端)或session(存在服务端)来判断本次请求是那个客户端发送过来:常用的会话保持有绑定会话,就是前边我们聊的在代理上通过算法或 ...

  3. Tomcat 8.5集群配置

    示例 <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions= ...

  4. Apache+tomcat+mod_jk+centos6.2负载均衡集群配置--转载

    转载地址:http://blog.163.com/chenhui_java/blog/static/17267249420128101191860/ 注: 由于长期受转载毒害,所以本人日志均是原创:其 ...

  5. window xp Apache与Tomcat集群配置--转载

    转载地址:http://www.cnblogs.com/obullxl/archive/2011/06/09/apache-tomcat-cluster-config.html 一. 环境说明 Win ...

  6. Apache+tomcat集群配置

    一.软件准备 Apache 2.2 : http://httpd.apache.org/download.cgi,下载msi安装程序,选择no ssl版本 Tomcat 6.0 : http://to ...

  7. Linux+Apache+Tomcat集群配置

    参考: http://blog.csdn.net/bluishglc/article/details/6867358# http://andashu.blog.51cto.com/8673810/13 ...

  8. Linux下Apache与Tomcat的完全分布式集群配置(负载均衡)

    最近公司要给客户提供一套集群方案,项目组采用了Apache和Tomcat的集群配置,用于实现负载均衡的实现. 由于以前没有接触过Apache,因此有些手生,另外在网上搜寻了很多有关这方面的集群文章,但 ...

  9. 基于mod_proxy+Apache 2.2.16+Tomcat 7的负载均衡与集群配置

    第一章. 背景简介 对于大多数企业应用,都希望能做到7*24小时不间断运行.要保持如此高的可用性并非易事,比较常见的做法是将系统部署到多台机器上,每台机器都对外提供同样的功能,这就是集群.系统变为集群 ...

随机推荐

  1. 【ERROR】no matching function for call to 'std::basic_ifstream<char>::basic_ifstream

    错误记录:QT中使用 no matching function for call to 'std::basic_ifstream<char>::basic_ifstream(QString ...

  2. linux下vi或vim操作Found a swap file by the name的原因及解决方法

    在linux下用vi或vim打开Test.java文件时 [root@localhost tmp]# vi Test.java出现了如下信息: E325: ATTENTION    Found a s ...

  3. RecyclerView实现分组展示信息

    extends:http://blog.csdn.net/wzlyd1/article/details/52292548 前言 一直在鸿洋大神的安卓群里水群,渐渐的loader和安卓弟等人都成长了起来 ...

  4. 理解vue之element-ui中的 <template slot-scope="scope">

    https://blog.csdn.net/tg928600774/article/details/81945140?utm_source=blogxgwz1

  5. Retrofit2 项目配置

    在项目的 app  build.gradle 文件中加入 dependencies { // Retrofit2implementation 'com.squareup.retrofit2:retro ...

  6. linux的基本操作(文本编辑工具vim)

    文本编辑工具vim * 命令模式:在一般模式下,输入”:”或者”/”即可进入命令模式.在该模式下,你可以搜索某个字符或者字符串,也可以保存.替换.退出.显示行号等等. 下面笔者教你如何在一个空白文档中 ...

  7. 3 Oracle 32位客户端安装及arcgis连接

    关于Oracle服务器端安装及配置的过程详见第2篇文章,链接如下:http://www.cnblogs.com/gistrd/p/8494292.html,本篇介绍客户端安装配置及连接arcgis过程 ...

  8. zepto.js的touch模块

     touch库实现了什么和引入背景 touch模块是基于zepto.js的. click事件在移动端上会有 300ms 的延迟,同时因为需要 长按 , 双触击 等富交互,所以我们通常都会引入类似 ze ...

  9. MySQL数据库导出

    因为业务需要,把MySQL查询的数据导出成csv文件,操作在Navicat中完成. 首选用SELECT语句查询数据,然后Navicat的导出,然后选csv,选路径,再加上首栏就可以了

  10. Javascript实现MD5加密

    /* * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message * Digest Algorithm, as d ...