`

httpd,mod_jk,tomcat,loadbalance

阅读更多

1.    环境配置以及安装指南

Apachehttpd-2.2.21

Mod_jk: tomcat-connectors-1.2.32-src.tar.gz

Tomcat: apache-tomcat-7.0.23.tar.gz

 

版本说明信息; http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html

 

1.1 安装apache

 

 A:解压apache

 tar -zxvf  httpd-2.2.21-beta.tar.gz

cd httpd-2.3.16-beta

B:配置

./configure  --prefix=/ceno/product/httpd --enable-module=vhost_alias --enable-module=so                                                               

                                                                               

Make

Make install

 

 

C:提示缺少apr以及aprutil,pcre,则需要先编译apr,aprutil以及pcre.

 

 C1:下载apr,aprutil 以及 pcre

apr: http://apr.apache.org/download.cgi
apr-util: http://apr.apache.org/download.cgi
pcre: http://pcre.org/
http://sourceforge.net/projects/pcre/

   

 c2:安装apr:

tar zxvf apr-1.4.5.tar.gz

cd apr-1.4.5

./configure --prefix=/usr/local/apr

Make

make install

 

c3:安装aprtuil

 

 

tar zxvf apr-util-1.3.10.tar.gz

cd apr-util-1.3.10

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

Make

make install

 

c4安装pcre

tar zxvf pcre-8.11.tar.gz

cd pcre-8.11

./configure --prefix=/usr/local/pcre

Make

make install

 

 

 

 

 

 

D:重新编译httpd

 

cd httpd-2.2.21

./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --prefix=/ceno/product/httpd --enable-module=vhost_alias --enable-module=so

 

Make

Make install

 

 

 

1.2 安装并编译mod_jk

 

Tar –zxvf  tomcat-connectors-1.2.32-src.tar.gz

Cd tomcat-connectors-1.2.32-src/native

./configure --with-apxs=/ceno/product/httpd/bin/apxs

Make

 

Su –c ‘make install’

 

 

1.3   解压tomcat7.0

 

 

Tar –zxvf apache-tomcat-7.0.23.tar.gz

Cd /ceno/product/

Ln –s /work/apache/ apache-tomcat-7.0.23 tomcat

 

 

2.     配置篇章

 

2.1 配置httpd.conf

 

Cd /ceno/product/httpd/conf

Vi httpd.conf  

下面是

 

#

# ServerName gives the name and port that the server uses to identify itself.

# This can often be determined automatically, but we recommend you specify

# it explicitly to prevent problems during startup.

#

# If your host doesn't have a registered DNS name, enter its IP address here.

#

#ServerName www.example.com:80

ServerName 192.168.7.18:80

 

 

#

# DocumentRoot: The directory out of which you will serve your

# documents. By default, all requests are taken from this directory, but

# symbolic links and aliases may be used to point to other locations.

#

#DocumentRoot "/ceno/product/httpd/htdocs"

DocumentRoot "/ceno/product/tomcat/webapps/examples"

 

 

 

<Directory "/ceno/product/tomcat/webapps/examples">

    #

    # Possible values for the Options directive are "None", "All",

    # or any combination of:

    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

    #

    # Note that "MultiViews" must be named *explicitly* --- "Options All"

    # doesn't give it to you.

    #

    # The Options directive is both complicated and important.  Please see

    # http://httpd.apache.org/docs/2.2/mod/core.html#options

    # for more information.

    #

    Options Indexes FollowSymLinks

 

    #

    # AllowOverride controls what directives may be placed in .htaccess files.

    # It can be "All", "None", or any combination of the keywords:

    #   Options FileInfo AuthConfig Limit

    #

    AllowOverride None

 

    #

    # Controls who can get stuff from this server.

    #

    Order allow,deny

    Allow from all

 

</Directory>

 

#加入mod_jk配置 

Include conf/jk/mod_jk.conf    

 

 

 

2.2 httpd/conf 下添加jk目录,配置mod_jk.conf

 

 

Cd /ceno/product/httpd/conf/jk/

 

#load mod_jk module

 LoadModule    jk_module  modules/mod_jk.so

# Declare the module for <IfModule directive> (remove this line on Apache 2.0.x)

#AddModule     mod_jk.c

# Where to find workers.properties

JkWorkersFile /ceno/product/httpd/conf/jk/workers.properties

# Where to put jk shared memory

JkShmFile     /ceno/product/httpd/mod_jk.shm

# Where to put jk logs

JkLogFile    /ceno/product/httpd/logs/mod_jk.log

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

JkLogLevel    debug

# Select the timestamp 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"

# Static files in all Tomcat webapp context directories are served by apache

 JkAutoAlias /ceno/product/tomcat/webapps/examples

 

# All requests go to worker1 by default

  JkMount /* balance1

  # Serve html, jpg and gif using httpd

  JkUnMount /*.html balance1

  JkUnMount /*.jpg  balance1

  JkUnMount /*.gif  balance1

 

 

# Add the jkstatus mount point

 JkMount /jkmanager/* jkstatus

 

workers.properties

 

# the list of workers

worker.list= worker1,worker2,balance1,jkstatus

 

##

##worker.worker name.type=<worker type> Where worker name is the name assigned to the worker and the worker type is one of the four types defined in the table

##(a worker name may only contain any space the characters [a-zA-Z0-9\-_]).

##Type    Description

#ajp12     This worker knows how to forward requests to out-of-process Tomcat workers using the ajpv12 protocol.

#ajp13     This worker knows how to forward requests to out-of-process Tomcat workers using the ajpv13 protocol.

#jni  DEPRECATED: This worker knows how to forward requests to in-process Tomcat workers using JNI.

#lb   This is a load-balancing worker; it knows how to provide round-robin based sticky load balancing with a certain level of fault-tolerance.

#Defines a worker named "loadbalancer" that loadbalances several Tomcat processes transparently.

 

 

# Set properties for worker1 (ajp13)

worker.worker1.type=ajp13

worker.worker1.host=192.168.7.18

worker.worker1.port=8009

worker.worker1.lbfactor=1

# Set properties for worker2 (ajp13)

worker.worker2.type=ajp13

worker.worker2.host=192.168.7.18

worker.worker2.port=8010

worker.worker2.lbfactor=3

#worker.worker2.connection_pool_timeout=600

#worker.worker2.socket_keepalive=1

#worker.worker2.socket_timeout=60

 

 

worker. balance1.type=lb

 

#

#After defining the workers you can also specify properties for them. Properties can be specified in the following manner:

#worker.<worker name>.<property>=<property value>

#

# The worker balance1 while use "real" workers worker1 and worker2

worker.balance1.balance_workers=worker1, worker2

 

worker.balance1.sticky_session =true

 

 

 

# Define a 'jkstatus' worker using status

worker.jkstatus.type=status

 

 

 

2.3 配置tomcat

 

一台机器上测试 2tomcat

 

Tomcat1:

<Server port="8005" shutdown="SHUTDOWN">

 

<Connector port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

 

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

 

<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker1">

 

 

Tomcat2:

 

<Server port="8006" shutdown="SHUTDOWN">

 

<Connector port="8081" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8445" />

 

<Connector port="8010" protocol="AJP/1.3" redirectPort="8445" />

<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker2">

 

 

 

 

一个tomcat 两个实例

 

修改/tomcat/conf/server.xml 文件,添加一个service

 

<?xml version='1.0' encoding='utf-8'?>

<!--

  Licensed to the Apache Software Foundation (ASF) under one or more

  contributor license agreements.  See the NOTICE file distributed with

  this work for additional information regarding copyright ownership.

  The ASF licenses this file to You under the Apache License, Version 2.0

  (the "License"); you may not use this file except in compliance with

  the License.  You may obtain a copy of the License at

 

      http://www.apache.org/licenses/LICENSE-2.0

 

  Unless required by applicable law or agreed to in writing, software

  distributed under the License is distributed on an "AS IS" BASIS,

  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

  See the License for the specific language governing permissions and

  limitations under the License.

-->

<!-- Note:  A "Server" is not itself a "Container", so you may not

     define subcomponents such as "Valves" at this level.

     Documentation at /docs/config/server.html

 -->

<Server port="8005" shutdown="SHUTDOWN">

  <!-- Security listener. Documentation at /docs/config/listeners.html

  <Listener className="org.apache.catalina.security.SecurityListener" />

  -->

  <!--APR library loader. Documentation at /docs/apr.html -->

  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

  <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->

  <Listener className="org.apache.catalina.core.JasperListener" />

  <!-- Prevent memory leaks due to use of particular java/javax APIs-->

  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />

  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />

  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />

 

  <!-- Global JNDI resources

       Documentation at /docs/jndi-resources-howto.html

  -->

  <GlobalNamingResources>

    <!-- Editable user database that can also be used by

         UserDatabaseRealm to authenticate users

    -->

    <Resource name="UserDatabase" auth="Container"

              type="org.apache.catalina.UserDatabase"

              description="User database that can be updated and saved"

              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"

              pathname="conf/tomcat-users.xml" />

  </GlobalNamingResources>

 

  <!-- A "Service" is a collection of one or more "Connectors" that share

       a single "Container" Note:  A "Service" is not itself a "Container",

       so you may not define subcomponents such as "Valves" at this level.

       Documentation at /docs/config/service.html

   -->

  <Service name="Catalina1">

 

    <!--The connectors can use a shared executor, you can define one or more named thread pools-->

    <!--

    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"

        maxThreads="150" minSpareThreads="4"/>

    -->

 

 

    <!-- A "Connector" represents an endpoint by which requests are received

         and responses are returned. Documentation at :

         Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)

         Java AJP  Connector: /docs/config/ajp.html

         APR (HTTP/AJP) Connector: /docs/apr.html

         Define a non-SSL HTTP/1.1 Connector on port 8080

    -->

    <Connector port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

    <!-- A "Connector" using the shared thread pool-->

    <!--

    <Connector executor="tomcatThreadPool"

               port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

    -->

    <!-- Define a SSL HTTP/1.1 Connector on port 8443

         This connector uses the JSSE configuration, when using APR, the

         connector should be using the OpenSSL style configuration

         described in the APR documentation -->

    <!--

    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

               maxThreads="150" scheme="https" secure="true"

               clientAuth="false" sslProtocol="TLS" />

    -->

 

    <!-- Define an AJP 1.3 Connector on port 8009 -->

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

 

 

    <!-- An Engine represents the entry point (within Catalina) that processes

         every request.  The Engine implementation for Tomcat stand alone

         analyzes the HTTP headers included with the request, and passes them

         on to the appropriate Host (virtual host).

         Documentation at /docs/config/engine.html -->

 

    <!-- You should set jvmRoute to support load-balancing via AJP ie :

    <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">

    -->

    <Engine name="Catalina1" defaultHost="localhost" jvmRoute="worker1">

 

      <!--For clustering, please take a look at documentation at:

          /docs/cluster-howto.html  (simple how to)

          /docs/config/cluster.html (reference documentation) -->

      <!--

      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

      -->

 

      <!-- Use the LockOutRealm to prevent attempts to guess user passwords

           via a brute-force attack -->

      <Realm className="org.apache.catalina.realm.LockOutRealm">

        <!-- This Realm uses the UserDatabase configured in the global JNDI

             resources under the key "UserDatabase".  Any edits

             that are performed against this UserDatabase are immediately

             available for use by the Realm.  -->

        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"

               resourceName="UserDatabase"/>

      </Realm>

 

      <Host name="localhost"  appBase="/ceno/product/test"

            unpackWARs="true" autoDeploy="true">

 

        <!-- SingleSignOn valve, share authentication between web applications

             Documentation at: /docs/config/valve.html -->

        <!--

        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />

        -->

 

        <!-- Access log processes all example.

             Documentation at: /docs/config/valve.html

             Note: The pattern used is equivalent to using pattern="common" -->

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

               prefix="localhost_access_log." suffix=".txt"

               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

 

      </Host>

    </Engine>

  </Service>

    <Service name="Catalina2">

 

    <!--The connectors can use a shared executor, you can define one or more named thread pools-->

    <!--

    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"

        maxThreads="150" minSpareThreads="4"/>

    -->

 

 

    <!-- A "Connector" represents an endpoint by which requests are received

         and responses are returned. Documentation at :

         Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)

         Java AJP  Connector: /docs/config/ajp.html

         APR (HTTP/AJP) Connector: /docs/apr.html

         Define a non-SSL HTTP/1.1 Connector on port 8080

    -->

    <Connector port="8081" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8444" />

    <!-- A "Connector" using the shared thread pool-->

    <!--

    <Connector executor="tomcatThreadPool"

               port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

    -->

    <!-- Define a SSL HTTP/1.1 Connector on port 8443

         This connector uses the JSSE configuration, when using APR, the

         connector should be using the OpenSSL style configuration

         described in the APR documentation -->

    <!--

    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

               maxThreads="150" scheme="https" secure="true"

               clientAuth="false" sslProtocol="TLS" />

    -->

 

    <!-- Define an AJP 1.3 Connector on port 8009 -->

    <Connector port="8010" protocol="AJP/1.3" redirectPort="8444" />

 

 

    <!-- An Engine represents the entry point (within Catalina) that processes

         every request.  The Engine implementation for Tomcat stand alone

         analyzes the HTTP headers included with the request, and passes them

         on to the appropriate Host (virtual host).

         Documentation at /docs/config/engine.html -->

 

    <!-- You should set jvmRoute to support load-balancing via AJP ie :

    <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">

    -->

    <Engine name="Catalina2" defaultHost="localhost" jvmRoute="worker1">

 

      <!--For clustering, please take a look at documentation at:

          /docs/cluster-howto.html  (simple how to)

          /docs/config/cluster.html (reference documentation) -->

      <!--

      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

      -->

 

      <!-- Use the LockOutRealm to prevent attempts to guess user passwords

           via a brute-force attack -->

      <Realm className="org.apache.catalina.realm.LockOutRealm">

        <!-- This Realm uses the UserDatabase configured in the global JNDI

             resources under the key "UserDatabase".  Any edits

             that are performed against this UserDatabase are immediately

             available for use by the Realm.  -->

        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"

               resourceName="UserDatabase"/>

      </Realm>

 

      <Host name="localhost"  appBase="/ceno/product/test"

            unpackWARs="true" autoDeploy="true">

 

        <!-- SingleSignOn valve, share authentication between web applications

             Documentation at: /docs/config/valve.html -->

        <!--

        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />

        -->

 

        <!-- Access log processes all example.

             Documentation at: /docs/config/valve.html

             Note: The pattern used is equivalent to using pattern="common" -->

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

               prefix="localhost_access_log." suffix=".txt"

               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

 

      </Host>

    </Engine>

  </Service>

</Server>

 

 

 

2.4  配置Jk status

方法一:

 

worker.peroerties 文件中增加:

worker.list=worker1,worker2,balancer1,jkstatus

 

# Define a 'jkstatus' worker using status

worker.jkstatus.type=status

 

mod_jk.conf 中增加

# Add the jkstatus mount point

 JkMount /jkmanager/* jkstatus

打开浏览器访问:

http://192.168.7.18/jkmanager

 

 

方法二:

 

workers.properties 文件中添加

 

worker.list=worker1,worker2,balancer1,jkstatus

 

# Define a 'jkstatus' worker using status

worker.jkstatus.type=status

worker. jkstatus.read_only=true

worker.jkstatus.mount=/admin/status/jk

worker. jkstatus.read_only 属性 默认为false

打开浏览器访问

http://192.168.7.18/admin/status/jk

 

 

分享到:
评论

相关推荐

    httpd mod_jk.so

    标题中的“httpd mod_jk.so”指的是Apache HTTP服务器(httpd)的一个模块,mod_jk.so,这个模块专门用于连接Apache与Tomcat应用服务器。Apache HTTP Server是世界上最流行的Web服务器软件之一,而Tomcat则是一个...

    mod_jk各个版本 apache与tomcat 整合

    ### mod_jk 各个版本及 Apache 与 Tomcat 的整合方法 在 IT 行业中,Apache 和 Tomcat 的整合是非常常见的需求之一。通过使用 mod_jk 这一模块,我们可以实现 Apache 和 Tomcat 之间的高效通信。mod_jk 是一个负载...

    整合apache与tomcat所需要的模块,各版本mod_jk

    3. **配置Apache**:在Apache的配置文件(如httpd.conf)中加载`mod_jk`模块,并指定模块路径。例如,添加`LoadModule jk_module /path/to/mod_jk.so`。 4. **配置`mod_jk`**:创建一个名为`workers.properties`的...

    Apache2.4服务器+mod_jk.so

    mod_jk.so是Apache的负载均衡模块,它通过Apache与Tomcat之间的通信协议(Jk或JK2)来实现这种协同工作。 首先,我们需要理解Apache2.4和mod_jk.so的关系。Apache2.4是Apache HTTP服务器的第2.4版本,提供了许多...

    mod_jk 和 iis文件,apache负载均衡连接tomcat 。内含链接及mod_jk.so文件

    此外,如果某个Tomcat实例出现故障,mod_jk还能自动将请求转发到其他健康的实例,确保服务的连续性。 在实际部署中,你需要先下载与你的Apache服务器匹配的mod_jk.so文件。根据描述,这个压缩包提供了多种版本,...

    mod_jk-1.2.31-httpd-2.2.3

    而`mod_jk.load`则在Apache的配置文件`httpd.conf`中引入,使Apache能够加载`mod_jk.so`模块。 总结一下,`mod_jk-1.2.31-httpd-2.2.3`是Apache与Tomcat集成的关键组件,用于处理动态内容请求的转发和集群管理。`...

    mod_jk.so文件

    2. **配置httpd.conf**:编辑Apache的主配置文件`httpd.conf`,添加`LoadModule`指令来加载mod_jk模块,如: ``` LoadModule jk_module modules/mod_jk.so ``` 3. **设置JKMount**:定义哪些URL由mod_jk处理。...

    apache2 通过mod_jk与tomcat配置

    本篇文章将详细介绍如何在Ubuntu 10.04系统环境下,配置Apache2通过mod_jk连接到Tomcat 6.0.24。 首先,确保你已经安装了Apache2和Tomcat。在Ubuntu上,可以通过以下命令安装: ```bash sudo apt-get update sudo ...

    windows mod_jk.so httpd+tomcat配置模块

    **Windows环境下Apache HTTPD服务器与Tomcat集成使用mod_jk.so模块** Apache HTTPD服务器是广泛应用的开源Web服务器,而Tomcat则是Java Servlet和JavaServer Pages(JSP)的容器。在部署Java应用时,通常会将Apache...

    Apache 2 mod_jk tomcat 5 双向SSL认证 传递证书信息

    3. **配置Apache**:在Apache的`httpd.conf`中配置mod_jk模块,并设置相应的SSL选项。 4. **配置Tomcat**:在Tomcat的`server.xml`中配置SSL连接器,并指定证书和私钥的位置。 5. **测试连接**:使用`Snoop.java`或...

    mod_jk dll

    3. **配置httpd.conf**:在Apache的配置文件`httpd.conf`中,添加`LoadModule`指令加载mod_jk模块,并配置`JkWorkersFile`和`JkMount`指令,指定worker配置文件的位置以及哪些URL应该由Tomcat处理。 4. **配置...

    mod_jk.so和apache

    打开Apache的配置文件,通常是`httpd.conf`或`apache2.conf`,然后在文件末尾添加以下行来加载`mod_jk`模块: ```apacheconf LoadModule jk_module /path/to/mod_jk.so ``` 请将`/path/to/mod_jk.so`替换为实际的`...

    mod_jk的支持httpd2.4的win64版本

    2. **配置Apache**:将`mod_jk.so`放置在Apache的`modules`目录下,并在`httpd.conf`配置文件中加载模块,通过添加`LoadModule jk_module modules/mod_jk.so`指令。 3. **配置JK**:创建或编辑`workers.properties`...

    tomcat集群配置所需要的apache和mod_jk-apache-2.0.55.so

    本压缩包提供了实现Tomcat集群配置所需的Apache服务器和mod_jk模块,具体版本为Apache 2.0.55和mod_jk-apache-2.0.55.so。 Apache HTTP Server是一个开源的Web服务器,它能够处理静态HTML文件和动态内容,如PHP、...

    Apache2.2 with mod_jk

    1. `httpd.conf`:Apache的主要配置文件,其中包含mod_jk的配置指令。 2. `workers.properties`:定义了Tomcat服务器实例(worker)的属性,如IP地址、端口、连接数限制等。 3. `uriworkermap.properties`:映射URL...

    apache的mod_jk.so文件

    在Apache中启用`mod_jk`,需要在`httpd.conf`配置文件中加载模块,并设置相应的指令。首先,添加`LoadModule jk_module modules/mod_jk.so`来加载模块。然后,使用`JkWorkersFile`指定`worker.properties`的位置,用...

    mod_jk-1.2.31-httpd-2.2.3.so.zip

    《Apache + Tomcat 整合:mod_jk与反向代理详解》 在Web服务器与应用服务器的集成中,Apache HTTP Server(简称Apache)和Tomcat的组合是常见的选择。Apache作为静态资源处理的专家,而Tomcat则擅长处理Java应用。...

    Apache+Tomcat+mod_jk+mod_ssl配置笔记

    在配置Apache与Tomcat的连接时,我们需要在httpd.conf中添加mod_jk的配置,例如启用mod_jk模块,设置worker定义(这将在workers.properties文件中详细描述)以及虚拟主机或路径的重定向规则。 接下来,workers....

    Apache+mod_jk+Tomcat负载均衡配置

    ### Apache+mod_jk+Tomcat负载均衡配置详解 #### 一、背景介绍 随着互联网技术的迅猛发展,单一服务器已经难以满足日益增长的服务需求。负载均衡技术应运而生,成为提高服务可用性和扩展性的关键手段之一。本文将...

    JK插件-windows版本 mod_jk-1.2.46 用于tomcat与http服务器集成集群

    3. 将mod_jk模块加载到Apache配置文件(httpd.conf)中。 4. 配置worker.properties文件,定义Tomcat实例的属性和负载均衡策略。 5. 修改Tomcat的server.xml文件,添加AJP监听端口。 6. 重启Apache服务器使配置生效...

Global site tag (gtag.js) - Google Analytics