bdjhx 发表于 2015-11-19 07:41:43

Nginx + Tomcat 7 + Memcached 集群配置

  一:系统环境
  操作系统:Ubuntu 13.10 x64
  Tomcat :apache-tomcat-7.0.52
  JDK : 1.7.0_51
  Nginx:nginx/1.7.1
  Memcached:1.4.20
  

  二:部署环境
  Nginx代理服务器
  192.168.1.200 安装路径:/usr/local/nginx
  安装步骤:http://blog.iyunv.com/mn960mn/article/details/29353827
  Memcached
  192.168.1.200 安装路径:/usr/local/memcached
  
  Tomcat1
  192.168.1.200 安装路径:/opt/apache-tomcat-7.0.52
  
  Tomcat2
  192.168.1.201 安装路径:/opt/apache-tomcat-7.0.52
  
  Tomcat2
  192.168.1.202 安装路径:/opt/apache-tomcat-7.0.52
  在
  192.168.1.200
  192.168.1.201
  192.168.1.202
  三个linux上,均需要在/etc/hosts文件中,增加如下内容:
  192.168.1.200       tomcat
  192.168.1.201       cluster1      
  192.168.1.202       cluster2
  
  三:配置
  1:nginx.conf
  添加:
  upstream tomcat_cluster {
  server tomcat:8080;
  server cluster1:8080;
  server cluster2:8080;
  }
  
  在 server { 里面添加
  location /cloudos {
  proxy_pass http://tomcat_cluster;
  }
  
  2:
  (1)    创建目录/src
  (2)    把项目放入/src目录,我这里的项目是:cloudos
  (3)    配置Tomcat,配置server.xml文件,添加如下内容:
  <Context path=&quot;/cloudos&quot;docBase=&quot;/src/cloudos&quot;>
  <ManagerclassName=&quot;de.javakaffee.web.msm.MemcachedBackupSessionManager&quot;   
  memcachedNodes=&quot;n1:tomcat:11211&quot;
  sticky=&quot;false&quot;
  sessionBackupAsync=&quot;false&quot;
  lockingMode=&quot;uriPattern:/path1|/path2&quot;
  requestUriIgnorePattern=&quot;.*\.(ico|png|gif|jpg|css|js)$&quot;   
  transcoderFactoryClass=&quot;de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory&quot;/>
  </Context>
  
  (4)    把下面的jar放到Tomcat的lib目录下
           asm-3.2.jar
           reflectasm-1.01.jar
           minlog-1.2.jar
           kryo-1.04.jar
           kryo-serializers-0.11.jar
           memcached-session-manager-tc7-1.8.1.jar
           memcached-session-manager-1.8.1.jar
           msm-kryo-serializer-1.8.1.jar
           spymemcached-2.10.2.jar
  注意:三个Tomcat均要这样配置
           这里的配置及jar下载地址,请参照:
  https://code.google.com/p/memcached-session-manager/wiki/SetupAndConfiguration
  
  
  五:启动服务
  首先启动memcached,然后依次启动3个tomcat,最后再启动nginx
  
  六:注意事项
  1:放入session的所有对象,必须实现java.io.Serializable接口
  
         版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: Nginx + Tomcat 7 + Memcached 集群配置