使用 Apache mod_jk.c 的负载平衡 (3791):缺少本地主机的 uri 映射
Load Balancing using Apache mod_jk.c (3791): missing uri map for localhost
一个需求,我需要为一个web应用做负载均衡。
我正在努力解决以下问题。请看日志
[Tue Jan 06 15:20:06 2015] [10548:14728] [debug] jk_shm_attach::jk_shm.c (337): Attached shared memory memory [1] size=3072 free=0 addr=0x50aa80
[Tue Jan 06 15:20:06 2015] [10548:14728] [debug] jk_child_init::mod_jk.c (3266): Initialized mod_jk/1.2.40
[Tue Jan 06 15:20:55 2015] [10548:11696] [debug] jk_translate::mod_jk.c (3623): missing uri map for localhost:/eimsgoed
[Tue Jan 06 15:20:55 2015] [10548:11696] [debug] jk_map_to_storage::mod_jk.c (3791): missing uri map for localhost:/eimsgoed
[Tue Jan 06 15:21:56 2015] [10548:11696] [debug] jk_translate::mod_jk.c (3623): missing uri map for localhost:/eimsgoed
[Tue Jan 06 15:21:56 2015] [10548:11696] [debug] jk_map_to_storage::mod_jk.c (3791): missing uri map for localhost:/eimsgoed
/eimsgoed 是我在 tomcat 个实例中部署的应用程序。
请查看我的 workers.properties 个文件
=============================
worker.list=balancer
worker.tomcat1.type=ajp13
worker.tomcat1.port=9004
worker.tomcat1.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.port=9024
worker.tomcat2.host=localhost
worker.tomcat3.type=ajp13
worker.tomcat3.port=9012
worker.tomcat3.host=localhost
worker.balancer.type=lb
worker.balancer.balance_workers=tomcat1,tomcat2,tomcat3
worker.list=jkstatus
worker.jkstatus.type=status
我的httpd.conf文件
=============
LoadModule jk_module modules/mod_jk.so
# Path to workers.properties
JkWorkersFile conf/workers.properties
# Path to jk logs
JkLogFile logs/mod_jk.log
# Jk log level [debug/error/info]
JkLogLevel debug
# Jk log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions for forwarding
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
JkMount /eimsgoed balancer
JkMount /status jkstatus
我的 server.xml 所有 3 tomcat 个实例
================================
tomcat 1 个实例
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="9004" protocol="AJP/1.3" redirectPort="9003" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
tomcat 2 个实例
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="9024" protocol="AJP/1.3" redirectPort="9023" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat2">
tomcat 3 个实例
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="9012" protocol="AJP/1.3" redirectPort="9011" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat3">
URI 哪里出错了?
[Tue Jan 06 15:21:56 2015] [10548:11696] [debug] jk_map_to_storage::mod_jk.c (3791): missing uri map for localhost:/eimsgoed
有关信息,我正在使用 Tomcat 7,Apache HTTP Server 2.4.10 和 Tomcat Mod_JK 连接器 1.2.40,Windows 7 操作系统
这个问题请多多指教。
我在配置中看不到任何错误。可能是 Apache 2.4 和 JK 的问题。
还有另一种配置负载均衡器的方法,使用 mod_proxy:
这里:
我遇到了同样的问题,我的配置几乎和你一样。
我在 httpd.conf
文件中添加了 VirtualHost
映射,它开始工作了。
<VirtualHost *:443>
ServerName localhost
JKMount /TCSession/* lb
</VirtualHost>
一个需求,我需要为一个web应用做负载均衡。
我正在努力解决以下问题。请看日志
[Tue Jan 06 15:20:06 2015] [10548:14728] [debug] jk_shm_attach::jk_shm.c (337): Attached shared memory memory [1] size=3072 free=0 addr=0x50aa80
[Tue Jan 06 15:20:06 2015] [10548:14728] [debug] jk_child_init::mod_jk.c (3266): Initialized mod_jk/1.2.40
[Tue Jan 06 15:20:55 2015] [10548:11696] [debug] jk_translate::mod_jk.c (3623): missing uri map for localhost:/eimsgoed
[Tue Jan 06 15:20:55 2015] [10548:11696] [debug] jk_map_to_storage::mod_jk.c (3791): missing uri map for localhost:/eimsgoed
[Tue Jan 06 15:21:56 2015] [10548:11696] [debug] jk_translate::mod_jk.c (3623): missing uri map for localhost:/eimsgoed
[Tue Jan 06 15:21:56 2015] [10548:11696] [debug] jk_map_to_storage::mod_jk.c (3791): missing uri map for localhost:/eimsgoed
/eimsgoed 是我在 tomcat 个实例中部署的应用程序。
请查看我的 workers.properties 个文件
=============================
worker.list=balancer
worker.tomcat1.type=ajp13
worker.tomcat1.port=9004
worker.tomcat1.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.port=9024
worker.tomcat2.host=localhost
worker.tomcat3.type=ajp13
worker.tomcat3.port=9012
worker.tomcat3.host=localhost
worker.balancer.type=lb
worker.balancer.balance_workers=tomcat1,tomcat2,tomcat3
worker.list=jkstatus
worker.jkstatus.type=status
我的httpd.conf文件
=============
LoadModule jk_module modules/mod_jk.so
# Path to workers.properties
JkWorkersFile conf/workers.properties
# Path to jk logs
JkLogFile logs/mod_jk.log
# Jk log level [debug/error/info]
JkLogLevel debug
# Jk log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions for forwarding
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
JkMount /eimsgoed balancer
JkMount /status jkstatus
我的 server.xml 所有 3 tomcat 个实例
================================
tomcat 1 个实例
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="9004" protocol="AJP/1.3" redirectPort="9003" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
tomcat 2 个实例
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="9024" protocol="AJP/1.3" redirectPort="9023" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat2">
tomcat 3 个实例
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="9012" protocol="AJP/1.3" redirectPort="9011" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat3">
URI 哪里出错了?
[Tue Jan 06 15:21:56 2015] [10548:11696] [debug] jk_map_to_storage::mod_jk.c (3791): missing uri map for localhost:/eimsgoed
有关信息,我正在使用 Tomcat 7,Apache HTTP Server 2.4.10 和 Tomcat Mod_JK 连接器 1.2.40,Windows 7 操作系统
这个问题请多多指教。
我在配置中看不到任何错误。可能是 Apache 2.4 和 JK 的问题。
还有另一种配置负载均衡器的方法,使用 mod_proxy:
这里:
我遇到了同样的问题,我的配置几乎和你一样。
我在 httpd.conf
文件中添加了 VirtualHost
映射,它开始工作了。
<VirtualHost *:443>
ServerName localhost
JKMount /TCSession/* lb
</VirtualHost>