经过从网上查找资料以及参考了几篇文章,总算自己摸索下来了如何进行一系列配置。
	首先:配置tomcat集群 nginx+ tomcat7
	1 安装jdk (可以选择6或者7都可以) 此处不用多说。
	2 下载nginx-1.2.5 (下载附件)
	3 下载 memcached(下载附件)
	4
	(注意:nginx负载均衡不会有太大问题,但是,在用memcached配置session共享的时候,tomcat的版本可能成为关系到成败的关键,
	目前选用的是tomcat apache-tomcat-7.0.12 版本 
	5、首先用nginx来搭建三台tomcat服务器的负载均衡环境,如何在一台机器启动三个tomcat请参照我的另外一篇文章
	我的tomcat的端口分别是8181,8282,8383
	解压下载的nginx压缩包,我的路径是D:\tomcat7collection\myserver;
	在D:\tomcat7collection\myserver\nginx-1.2.6\conf 下找到 nginx.conf,该文件为nginx的请求分发配置文件,打开nginx.conf做如下修改:
	    (1)在http {…} - server{…} - location / {…}中加入一行:“proxy_pass  http://127.0.0.1;”
	修改后如下:   
	 location / {
	            root   html;
	            index  index.html index.htm;
	            proxy_pass    http://127.0.0.1;
	        }
	       (2)
	在http {…}中加入以下代码:
	?
	#设定负载均衡的服务器列表
	upstream 127.0.0.1 {  #weigth参数表示权值,权值越高被分配到的几率越大
	            server 127.0.0.1:8181 weight=1;
	            server 127.0.0.1:8282 weight=2;
	            server 127.0.0.1:8383 weight=3;
	        }
	可以进行请求分发的简单测试,
	启动nginx,打开cmd,进入到 D:\tomcat7collection\myserver\nginx-1.2.6\ 路径下 输入nginx 敲回车,调度处任务管理器看到进程里面有nginx则表示启动成功
	启动三台tomcat
	用eclipse新建一个web项目cluster,该项目下新建一个cluster.jsp文件,编辑该文件内容如下:
	<%@ page contentType="text/html; charset=UTF-8" %> 
	<%@ page import="java.util.*" %> 
	<html><head><title>Cluster Test</title></head> 
	<body> 
	<% 
	  //HttpSession session = request.getSession(true); 
	  System.out.println(session.getId()); 
	  out.println("<br> SESSION ID:" + session.getId()+"<br>");   
	  // 如果有新的请求,则添加session属性 
	  String name = request.getParameter("name"); 
	  if (name != null && name.length() > 0) { 
	     String value = request.getParameter("value"); 
	     session.setAttribute(name, value); 
	  }   
	    out.print("<b>Session List:</b>");   
	    Enumeration<String> names = session.getAttributeNames(); 
	    while (names.hasMoreElements()) { 
	        String sname = names.nextElement();  
	        String value = session.getAttribute(sname).toString(); 
	        out.println( sname + " = " + value+"<br>"); 
	        System.out.println( sname + " = " + value); 
	   } 
	%> 
	</body> 
	</html>
	修改tomcat\conf\server.xml 
	?
	<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat7-1">
	对应的另外两台tomcat分别是 tomcat7-2 tomcat7-3
	?
	将cluster项目打包成war包分别放到每个tomcat的webapps下
	在浏览器中输入localhost:8080/cluster/cluster.jsp 重复刷新可以看到输出的session值在变化说明分发处理成功
	6 配置session 共享
	将上面下载好的memcached的压缩包解压到 D:\tomcat7collection\memcached
	使用的是memcached-session-manager-tc7-1.6.3 来进行,使用到的jar包如下:
	jar包下载地址 
	下载如下jar包,点击下载spymemcached-2.7.3.jar
	其他jar包可以从如下链接找到:http://code.google.com/p/memcached-session-manager/downloads/list
	如果大家懒得挨个去下,我提供了自己下载整理好的下载 tomcate session 共享所需jar包下载
	好了,把上述jar包放到tomcat/lib 目录下,修改每个tomcat的配置文件tomcat\conf\context.xml
	在<context>...</context>标签之间加入如下代码:
	?
	<Manager
	className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
	memcachedNodes="n1:127.0.0.1:11211"
	sticky="false"
	sessionBackupAsync="false"
	lockingMode="uriPattern:/path1|/path2"
	requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
	transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"/>
	关闭所有tomcat,打开cmd 进入memcached解压到的路径D:\tomcat7collection\memcached 输入:memcached.exe –d install 回车安装windows服务
	输入:memcached.exe –p 11211 –d start 回车启动memcached服务,启动三个tomcat
	在浏览器中输入localhost:8080/cluster/cluster.jsp  重复刷新发现session的值不变如下所示,session共享成功
	SESSION ID:76AC7C56C4B278ADFDEC6EA7821
	
	- 深圳市一键一家网络科技有限公司官方网址:http://www.songhu9.com.cn
 - QQ:316675593,电话号码:19807655856
 - 业务范围:公司网站建设、管理软件研发、软件网站二次开发、400电话、电商平台研发、公众号研发!
 - 免责申明:本站内容均来源于网络,版权归原创所有,如有任何版权方面的问题,请与我们联系处理!
 
	            
	            