Nginx + Memcached + Tomcat 集群

转载 2015年07月10日 12:36:10

一:环境

Tomcat7,下载链接:http://tomcat.apache.org/Nginx是nginx-1.2.8,

下载链接:http://nginx.org/en/download.html

Memcached是memcached-1.2.6-win32-bin,下载链接:http://code.jellycan.com/files/memcached-1.2.6-win32-bin.zip

其他所需jar包,如下列表:

memcached-session-manager-1.6.1,memcached-session-manager-tc6-1.6.1(因为Tomcat版本为6.0)

javolution-5.4.3.1,msm-javolution-serializer-1.6.1(准备使用javolution序列化方式)

spymemcached-2.7.3(依赖包),以上jar包在http://code.google.com/p/memcached-session-manager/downloads/list中都可以找到,文档http://code.google.com/p/memcached-session-manager/wiki/SetupAndConfiguration中详细介绍了不同的服务器版本,不同的jar包需求。

二:Tomcat的配置安装

解压拷贝两份tomcat,tomcat1 server.xml配置如下

tomcat2 同理,启动tomcat,启动成功

三:Memcached配置

1、 Memcached的安装

将安装包memcached-1.2.6-win32-bin解压到X:/目录下面,重命名为memcached。打开命令提示符,进入X:/memcached的目录,输入安装命令“memcached.exe –d install”,安装memcached的windows服务,然后输入“memcached -d start”,以后memcached将作为windows的一个服务每次开机时自动启动。默认端口:11211。

下面插入介绍一些memcached的常用命名,也是最基本的命令,不然你启动了memcached,不知道怎么停止这个服务了,也不知道是否已经启动该服务。

(1) 查看memcached的服务是否已经启动:tasklist /fi "imagename eq memcached.exe"

(2) memcached参数使用介绍
-p 监听的端口 
-l 连接的IP地址, 默认是本机 
-d start 启动memcached服务 
-d restart 重起memcached服务 
-d stop|shutdown 关闭正在运行的memcached服务 
-d install 安装memcached服务 
-d uninstall 卸载memcached服务 
-u 以的身份运行 (仅在以root运行的时候有效) 
-m 最大内存使用,单位MB。默认64MB 
-M 内存耗尽时返回错误,而不是删除项 
-c 最大同时连接数,默认是1024 
-f 块大小增长因子,默认是1.25 
-n 最小分配空间,key+value+flags默认是48 
-h 显示帮助
2、memcached的配置
(1)把之前下载的jar包(总共是5个),COPY到两个TOMCAT安装目录下的lib/中。
(2)修改文件$TOMCAT/conf/context.xml(两个tomcat中的都需要修改),在Context标签中加入如下代码:

<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"

memcachedNodes="n1:localhost:11211//目前机器只安装了一个memcached,所以这里只写一个节点OK。
requestUriIgnorePattern=".*/.(png|gif|jpg|css|js)$" 
sessionBackupAsync="false" 
sessionBackupTimeout="100"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory//序列化类
copyCollectionsForSerialization="false"/>


四:Nginx的安装和配置

1、Nginx的安装

将安装包nginx-1.3.0.zip解压到X:/目录

启动Nginx:进入X:/nginx目录,执行命令:start nginx.exe,弹出屏会一闪而逝。接着输入tasklist /fi "imagename eq nginx.exe",出现如下内容,表示nginx已正常启动啦!在浏览器输入http://localhost,可以看到Nginx的欢迎页。

 

更多Nginx常用命令:

停止Nginx:nginx.exe -s stop|quit

重启Nginx:nginx.exe -s reload

查看Nginx版本:nginx.exe -v

修改文件$NGINX_HOME/conf/nginx.conf。


#设定负载均衡的服务器列表

 upstream tomcat_server{
server localhost:11080 weight=1;#第一台机器
server localhost:11081 weight=1;#第二台机器
}


server {
listen 80;
server_name localhost;

#charset koi8-r;

#access_log logs/host.access.log main;

location / {
root html;
index index.html index.htm;
proxy_pass http://tomcat_server;
}

}

以上部分是需要在nginx.conf中添加的内容。

proxy_pass表示代理主机,upstream tomcat_server{……}配置中配置了代理主机处理请求的两个服务。

上述配置表示:Nginx监听到http://locahost:80的请求之后,转发到代理tomcat_server中的两个服务中的一个,有它们来处理请求。weight表示被分配到权重,weight值越大,处理请求的机会越多。

至此,Nginx的安装与配置结束。

五:测试

测试代码放入tomcat1,2中,启动各个服务


集群成功

Linux搭建待尝试



原帖:http://www.oschina.net/question/1014681_107718

相关文章推荐

nginx+tomcat+memcached集群源码+文档

  • 2015年05月06日 18:51
  • 34.07MB
  • 下载

负载均衡与集群之nginx+tomcat+memcached

Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻...

nginx+tomcat+memcached搭建服务器集群及负载均衡

在实际项目中,由于用户的访问量很大的原因,往往需要同时开启多个服务器才能满足实际需求。但是同时开启多个服务又该怎么管理他们呢?怎样实现session共享呢?下面就来讲一讲如何使用tomcat+ngin...

Nginx+Memcached+Tomcat集群需要的jar包

  • 2015年05月07日 10:36
  • 956KB
  • 下载

Nginx+Tomcat+Memcached集群 【测试成功】

Nginx+Tomcat+Memcached集群Tomcat集群session同步方案有以下几种方式:使用tomcat自带的cluster方式,多个tomcat间自动实时复制session信息,配置起...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Nginx + Memcached + Tomcat 集群
举报原因:
原因补充:

(最多只允许输入30个字)