1.   Nginx

Nginx是通过将多个Web Server绑定到同一个IP地址下,以实现多个WebServer间的负载均衡,降低单个Web Server的负荷,以提高整体的性能与稳定性。

安装和配置Nginx的简单方式如下:

1)      下载并解压Nginx到本地目录:http://nginx.org/en/download.html

2)      对Nginx的配置主要是对它的配置文件/conf/nginx.conf的修改。如下链接是nginx.conf配置文件各个属性的详细说明:

http://www.cnblogs.com/xiaogangqq123/archive/2011/03/02/1969006.html

要利用nginx配置Web Server的负载均衡,需要修改的地方有:

a)        在http标签下,配置upstream属性,如:

[plain] view plaincopy
  1. upstream mysvr {
  2. #weigth参数表示权值,权值越高被分配到的几率越大
  3. server   192.168.8.1x:3128  weight=5;
  4. server   192.168.8.2x:80       weight=1;
  5. server   192.168.8.3x:80       weight=6;
  6. }

其中,weight是可选项;若不配置weight,则默认所有的Web Server具有相同的权重。

b)        在http标签下的server标签中,做适当的修改,如:

[plain] view plaincopy
  1. server {
  2. listen       83;
  3. server_name  localhost;
  4. location / {
  5. root   /root;
  6. index  index.jsp;
  7. proxy_pass        http:// mysvr;
  8. proxy_set_header  Host $host:83;
  9. proxy_set_header  X-Real-IP  $remote_addr;
  10. proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
  11. }
  12. ……
  13. }

其中需要说明的是,server_name和listen分别设置的是用户访问的地址和端口;proxy_pass指定转向的服务器列表(在upstream中定义);proxy_set_header Host设置跳转的http报文中的地址为proxy_pass中指定的地址,同时可以在此处指定端口号,若不指定,则默认会跳到80端口。

其它一些需要设置的属性请参见上述链接中的详细介绍。

3)      配置完成后,在控制台中进入Nginx的根目录,运行nginx或nginx –s start则可启动Nginx服务器,运行nginx –s stop或nginx –s quit可关闭Nginx(不可使用Ctrl+C强制结束)。

2.   Memcached

Memcached是一个key-value映射的缓存系统。在WebApplication中可以利用Memcached完成一些频繁访问对象的缓存。而在分布式的Web Server集群中,由于需要保证各个单独的Web Server中的Session相一致,因此需要利用Memcached来支持。

这里需要使用一个开源项目,即Memcached Session Manager(MSM),如下链接是该开源项目的官网:

http://code.google.com/p/memcached-session-manager/

如下链接是官方的安装和配置向导:

http://code.google.com/p/memcached-session-manager/wiki/SetupAndConfiguration

利用MSM对已经通过Nginx实现集群的Tomcat服务器组进行统一Session存储管理的简单方法如下:

1)      下载、安装、运行Memcached:

Linux版:http://memcached.org/

Windows版:http://code.jellycan.com/memcached/

2)      下载所需的jar包并放置到Tomcat的lib路径下:

a)        memcached-session-manager-${version}.jar,基础包

b)        memcached-session-manager-tc6-${version}.jar(针对Tomcat 6)或者memcached-session-manager-tc7-${version}.jar(针对Tomcat 7),服务器支持包

c)        spymemcached-2.8.12.jar和couchbase-client-1.1.4.jar,缓存支持包

d)        msm-javolution-serializer.jar和javolution-5.4.3.1.jar,序列化支持包

3)      在Tomcat的/conf/context.xml文件中,在根标签<context>下添加如下代码:

[html] view plaincopy
  1. <ManagerclassNameManagerclassName="de.javakaffee.web.msm.MemcachedBackupSessionManager"
  2. memcachedNodes="${tag}:localhost:11211"
  3. requestUriIgnorePattern=".*/.(png|gif|jpg|css|js)$"
  4. sessionBackupAsync="false"
  5. sessionBackupTimeout="100"
  6. transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
  7. copyCollectionsForSerialization="false"/>

其中${tag}可以替换成任意字符串,作为该WebServer的标记

4)      完成上述配置后,启动Tomcat,若无错误则表示配置成功。通过HttpSession的getId方法获取到session id时,可以看到在id的最后有上述的标记

转载:http://blog.csdn.net/sadfishsc/article/details/9151083

转载于:https://www.cnblogs.com/peijie-tech/p/3849420.html

Nginx+Memcached+Tomcat集群配置相关推荐

  1. Nginx+Memcached+Tomcat集群配置实践(Sticky Session)

    准备工作 创建一个简单的web应用,名为session.其中有两个页面,分别如下所示: 页面login.jsp [html] view plaincopy <%@ page language=& ...

  2. 配置集群Nginx+Memcached+Tomcat集群配置

    上班之余抽点时间出来写写博文,希望对新接触的朋友有帮助.今天在这里和大家一起学习一下配置集群 1.   Nginx Nginx是通过将多个Web Server绑定到同一个IP地址下,以实现多个WebS ...

  3. Windows7 + Nginx + Memcached + Tomcat 集群 session 共享

    一,环境说明 操作系统是Windows7家庭版(有点不专业哦,呵呵!),JDK是1.6的版本, Tomcat是apache-tomcat-6.0.35-windows-x86,下载链接:http:// ...

  4. Nginx以及通过Nginx实现tomcat集群配置与负载均衡

    Nginx简介 启动,停止,和重新加载配置文件命令 Nginx功能 正向代理和反向代理的区别 反向代理 负载均衡 1.RR(默认) 2.权重 3.ip_hash 4.fair(第三方) 5.url_h ...

  5. Nginx SSL+tomcat集群配置SSL,ngnix配置SSL后js/css访问出现404

    最近在做一个项目, 架构上使用了 Nginx +tomcat 集群, 且nginx下配置了SSL,tomcat no SSL,项目使用https协议 但是,明明是https url请求,发现 log里 ...

  6. nginx+双tomcat集群负载均衡(一台机器)

    nginx简介 Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor ...

  7. linux环境下通过nginx实现tomcat集群

    2019独角兽企业重金招聘Python工程师标准>>> linux环境下通过nginx实现tomcat集群 安装nginx之前需要pcre依赖和jvm-remote补丁 一.准备如下 ...

  8. window xp Apache与Tomcat集群配置--转载

    转载地址:http://www.cnblogs.com/obullxl/archive/2011/06/09/apache-tomcat-cluster-config.html 一. 环境说明 Win ...

  9. 大数据互联网架构 tomcat集群配置时三个端口的作用

    tomcat集群配置时三个端口的作用 在配置多个tomcat时需要同时配置这三个端口 Connector用于监听请求 protocol: http/1.1协议 , 用于监听浏览器发送的请求 , 设置成 ...

  10. Apache + Tomcat集群配置详解(1)

    Apache + Tomcat集群配置详解(1) 一.软件准备 Apache 2.2 : http://httpd.apache.org/download.cgi,下载msi安装程序,选择no ssl ...

最新文章

  1. 关于页面有多个验证控件和多个按钮的问题
  2. sublime快捷键
  3. elasticsearch源码分析之search模块(server端)
  4. 【管理】舍KPI取OKR,Google的管理方法
  5. Dubbo 注解驱动(Annotation-Driven)
  6. c语言操作空间怎么打开_学好C语言,离大神更近一步,C环境的安装
  7. Sql 行转列问题总结
  8. dev分支和master是什么_天天用Git,分支开发你怎么弄的?
  9. SharePoint 2013 workflow cannot start automatically when you logged in site as a system account
  10. 如何在Linux kernel Makefile中添加宏定义
  11. Linux 如何通过命令仅获取IP地址
  12. python经典程序实例-Python3经典100例(③)
  13. 智能优化算法:原子搜索优化算法 -附代码
  14. Hello!CDSN!
  15. 【模仿学习】南京大学港中文联合总结: 29页中文详述模仿学习完整过程
  16. fits文件读取代码
  17. mysql查询结果数量_sql语句统计查询结果数量怎么写?
  18. win10 java模拟鼠标_[pc玩家]如何在Windows10中用键盘控制鼠标光标
  19. 计算机二级程序设计提交,程序设计方法与风格(计算机二级复习指导)
  20. 嵌入式C语言学习笔记附图

热门文章

  1. 对数几率回归(Logistic Regression)
  2. Mob云验证,让身份验证更简单
  3. surfer画世界频率分布图(等高线、地点标注)
  4. 限制root远程登录
  5. iPhone6分辨率
  6. WIN7专业版下安装MS SQL SERVER 2005 开发版
  7. SAP GUI 710 PATCH 12 下载地址
  8. 批处理转成可执行文件的软件
  9. 衡量神经网络的三个指标,参数量,multi-add,flop计算力
  10. Netty-Pipeline组件