转载自: http://blog.sina.com.cn/s/blog_5f53615f0100w299.html
本例用到的软件和相应版本如下:
Nginx for windows V1.1.8,下载地址:http://nginx.org/en/download.html
Membase for windows V1.7.2,下载地址:http://www.couchbase.com/downloads/membase-server/community
Tomcat for windows V7
Memcached session manager V1.5.1,下载地址:http://code.google.com/p/memcached-session-manager/
Memcached java client: spymemcached-2.7.3.jar,下载地址:http://code.google.com/p/spymemcached/
集群结构图如下:
搭建步骤:
一、 部署两个tomcat7,端口分别改为5080和6080
二、 下载nginx,并解压,修改配置:
打开nginx-1.1.8\conf\nginx.conf配置文件
#user nobody; #cpu个数,与机器有关 worker_processes 1;
#error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info;
#pid logs/nginx.pid;
events { #连接数,一般在windows系统下不能设置太大,否则会造成没有相应 worker_connections 200; }
http { include mime.types; default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on; #tcp_nopush on;
#keepalive_timeout 0; keepalive_timeout 65;
client_header_buffer_size 1k; large_client_header_buffers 4 4k;
#gzip on;
upstream myserver { #tomcat访问url,权重 server localhost:6080 weight=1 fail_timeout=10; server localhost:5080 weight=1 fail_timeout=10; #采用共享session不能用ip_hash #ip_hash; }
server { #监听端口 listen 7080; #监听服务器 server_name 172.18.17.130;
charset utf-8;
#access_log logs/host.access.log main;
location / { root html; index index.html index.htm; #请求转发到前面定义的myserver proxy_pass http://myserver; #html头加上7080端口 proxy_set_header Host $host:7080; }
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
# proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #}
# deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
} |
三、 下载并安装Membase,安装后会自动启动membase服务,进入控制台显示:
登录,进入配置。
四、 Copy jar包到tomcat\lib目录下
将Memcached session manager的几个jar包:
memcached-session-manager-1.5.1.jar、memcached-session-manager-tc7-1.5.1.jar、msm-javolution-serializer-1.5.1.jar、msm-kryo-serializer-1.5.1.jar、msm-xstream-serializer-1.5.1.jar
和spymemcached-2.7.3.jar,copy到两个tomcat的lib目录下。其中memcached-session-manager-tc7-1.5.1.jar是for tomcat7的,msm-javolution-serializer-1.5.1.jar、msm-kryo-serializer-1.5.1.jar、msm-xstream-serializer-1.5.1.jar是负责session持久化,根据配置文件的持久化策略选择相应的一种就可以。
五、 修改tomcat session存储策略
修改tomcat\conf\context.xml文件,在<context>中加入
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" memcachedNodes="n1:172.18.17.130:11211" sticky="false" requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$" /> |
其中,className是session管理类,memcachedNodes="n1:172.18.17.130:11211"是membase cache集群,这里只有一个节点;sticky=”false”表示不采用粘性session,默认值是true,如果要真正的实现负载均衡就要使用session共享方式,而不采用粘性session。Session持久化默认是采用java持久化,但性能比Kryo方式差。如果是kryo方式还需要引入更多的相关jar包。
相关推荐
Nginx+Tomcat+Memcached实现tomcat集群和session共享 nginx配置
Nginx+Memcache+Tomcat集群(session共享),本人亲测成功!Nginx+Memcache+Tomcat集群(session共享),本人亲测成功!
自己做的一个nginx+tomcat+redis完成session共享小例子,包括所需jar,适合初学者,希望大家一起学习交流
Nginx+Tomcat+Memcached实现tomcat集群和session共享 tomcat部分
Nginx+Tomcat+Memcached共享session集群配置
Windows7 + Nginx + Memcached + Tomcat 集群 session 共享
包含的jar包如下: commons-pool2-2.0.jar jedis-2.5.2.jar tomcat-juli-adapters.jar tomcat-juli.jar tomcat-redis-session-manager1.2.jar
Nginx+Memcache+Linux+Tomcat搭建的集群,大神勿喷
Nginx+tomcat配置集群负载均衡实现动静分离实例
tomcat+nginx+memcache高可用
Linux下搭建Nginx+Keepalived+Redis+Tomcat实现session共享 、负载均衡、高可用
Nginx+Tomcat7+Memcached集群Session共享 完整例子 主要是利用memcached-session-manager(下面简称msm)开源tomcat插件改变tomcat原始的session存储机制,将session的存储放到分布式缓存memcache中,从而实现对...
Tomcat+Memcached实现tomcat集群和session共享.docx
Nginx+Tomcat+Memcached集群Session共享实例,Nginx 1.81 + tomcat1 + tomcat2 + Memcached 完整可运行 访问根目录下 test.jsp 可看效果
基于nginx+tomcat+memcache的负载均衡架构
经过测试,此套jar包是为配置sesion共享所需要的memcache-session-manager有关jar包,其中memcache版本2.4.1,Nginx版本1.4.7
tomcat+nginx+memcache+session 所需jar包,包括memcache等安装包
Windows+Nginx+Tomcat做负载均衡同时实现session共享Demo
详细说明了windows服务器nginx+tomcat+mysql部署及配置(配置阿里云后台安全组,配置域名)很适合新手学习 附件中包含: 1.操作说明文档 2.操作录屏 3.安装所用到的软件安装包 1)Windows Server 2019 数据中心版 ...
redis缓存服务器Nginx+Tomcat+redis+MySQL实现session会话共享