日期:2014-05-17  浏览次数:21083 次

(转)Tomcat负载均衡原理详解及配置(Apache2.2.19+Tomcat7.0.12)

转自http://www.cnblogs.com/dcba1112/archive/2011/08/01/2124092.html

结构图

JAVA项目一般直接用Tomcat作为Web服务器。为了增加tomcat的性能和稳定性,我们一般采用balance和session同步机制。 下图列出了我们常用也是最简单的解决方案。

说明

1 balance

  • 负载均衡我们一般采用Apache proxy和Apache+mod_jk方式
  • 所使用软件:Apache2.2.19  http://httpd.apache.org/download.cgi#apache22;
          Tomcat7  ???????? http://tomcat.apache.org/download-70.cgi

1.1 mod_proxy方式

  mod_proxy是一种分工合作的的形式,通过主服务器跳转到各台主机负责不同的任务而实现任务分工,这种形式不能实现负载均衡,只能提供主服务器的访问跳转
  修改apache的httpd.conf文件配置

打开httpd.conf文件,取消下面四行的注释,用以打开代理所需的.so支持模块。

View Code
1?#LoadModule?proxy_http_module?modules/mod_proxy_http.so
2?#LoadModule?proxy_connect_module?modules/mod_proxy_connect.so
3?#LoadModule?proxy_module?modules/mod_proxy.so
4?#Include?conf/extra/httpd-vhosts.conf

打开文件conf\extra\httpd-vhosts.conf,可以看到如下代码:

View Code
?1?#
?2?#?Use?name-based?virtual?hosting.
?3?#
?4?NameVirtualHost?*:80
?5?
?6?#
?7?#?VirtualHost?example:
?8?#?Almost?any?Apache?directive?may?go?into?a?VirtualHost?container.
?9?#?The?first?VirtualHost?section?is?used?for?all?requests?that?do?not
10?#?match?a?ServerName?or?ServerAlias?in?any?<VirtualHost>?block.
11?#
12?<