nginx 与 tomcat 集群 一二事 (0) - 简单介绍
最近看了nginx以及tomcat的集群,通俗的做一下简单总结吧
nginx 是一个http服务器,是由俄罗斯人发明的,目前主流的服务器,作为负载均衡服务器,性能非常好,最高支持5万个并发连接数,在淘宝被广泛使用(据说被淘宝的工程师优化到单机200万的并发,非常的厉害)
单个tomcat最大支持的用户并发量默认是150,在测试过程中250左右开始会有性能的问题
举个栗子,有3台tomcat,有N多请求同时经过nginx的时候,nginx作为一个路由,把请求分别分发给这3台tomcat,以此减少tomcat负重
作为集群,当其中一台tomcat宕机,出现故障,那么nginx将会自动排除这个服务
tomcat 与 nginx 之间通过ajp协议,这个协议提供很高的通信速度以及性能
另外,nginx也能够存放静态资源,项目中会存在很多图片,以及静态页面,如果把这些静态资源放入nginx中,那么性能会提高,速度是毫秒级别的,非常快
在动静分离的项目中,所有静态资源(HTML, CSS, JavaScript)都放入此服务器中,客户端请求到nginx,这样将会拦截大量的非动态请求,以此提高性能
工作原理:
在upstream bakend 中配置多个tomcat服务器,每个请求按照不同的时间顺序去请求不同的tomcat,如果在某一时段中有tomcat挂了,那么会被自动剔除
ip_hash:主要用于解决session问题,使用后,每个用户访问的后端服务器就是固定的,session不会改变,这个也就是通常所说的粘性session,访问速度快,只与一个节点上的服务器通信,缺点就是如果这个节点挂了,用户的session信息也就没了
*有粘性session那么就又非粘性session,非粘性session指的就是session在多个tomcat之间复制,节点挂了也能访问到,缺点就是在大并发的时候性能有影响
粘性和非粘性session都是基于msm的,也就是Memcached Session Manager; 话说tomcat和memcached 是无缝对接的
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:host1.yourdomain.com:11211,n2:host2.yourdomain.com:11211"
sticky="false"
sessionBackupAsync="false"
lockingMode="uriPattern:/path1|/path2"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
sticky="false" 指定为非粘性session
简单示意图

简单架构配置可以参考如下

这是针对nginx的一些简单总结,接下来的文章将会深入对nginx进行详细探讨。
nginx 与 tomcat 集群 一二事 (0) - 简单介绍的更多相关文章
- nginx整合tomcat集群并做session共享----测试案例
最近出于好奇心,研究了一下tomcat集群配置,并整合nginx,实现负载均衡,session共享,写篇记录,防止遗忘.---------菜鸡的自我修炼. 说明:博主采用一个web项目同时部署到两台t ...
- Docker Compose 一键部署Nginx代理Tomcat集群
Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [root@localhost ~]# tree compose_nginx_tomcat/ compose_nginx ...
- Nginx+Memcached+Tomcat集群配置(MSM--win7 64bit)
本次主要是在win7 64 上演示操作. web应用构建 Memcached安装配置启动 Tomcat配置 所需jar包 memcached-session-manager 序列化 contextxm ...
- (转)Nginx SSL+tomcat集群,request.getScheme() 取到https正确的协议
转自http://www.cnblogs.com/interdrp/p/4881785.html 最近在做一个项目, 架构上使用了 Nginx +tomcat 集群, 且nginx下配置了SSL,to ...
- Ubuntu下基于Nginx实现Tomcat集群负载均衡
版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] Nginx是一款HTTP和反向代理服务器,有关它的介绍可以到网上搜一下,很多很多,不再累述.这里,我们记录一下Nginx ...
- 使用Nginx实现Tomcat集群负载均衡
概述 要解决的问题 环境准备以及问题解决思路 配置 测试 小结 一.概述 使用Nginx主要是来解决高并发情况下的负载均衡问题. 二.要解决的问题 1.最主要是负载均衡请求分发. 2.文件上传功能,只 ...
- Nginx SSL+tomcat集群,request.getScheme() 取到https正确的协议
最近在做一个项目, 架构上使用了 Nginx +tomcat 集群, 且nginx下配置了SSL,tomcat no SSL,项目使用https协议 但是,明明是https url请求,发现 log里 ...
- Docker Compose部署 nginx代理Tomcat集群
一.简介 使用Docker镜像部署Nginx代理的多个Tomcat集群: 使用Dockerfile构建nginx镜像 使用Dockerfile构建tomcat镜像 mysql镜像使用docker hu ...
- Nginx实现tomcat集群进行负载均衡
一.背景 随着业务量和用户数量的激增,单一的tomcat部署应用已经无法满足性能需求,而且对于每次发布项目期间服务不可用的问题也凸显,既然出现了这个问题,那么我们本文就借助nginx来完美的解决这个问 ...
随机推荐
- 在Windows下编写并运行第一个ASP.NET 5 Preview Web API程序
2015年07月21日在微软中国MSDN的官方微博上得知Visual Studio 2015正式版完美发布. 抱着尝鲜的心态下载了Visual Studio社区版本. 在这个首发的版本里面,我们可以看 ...
- Engine中如何实现先居中显示要素再闪烁
[解决办法]:需要在要素居中显示之后.闪烁之前执行IScreenDisplay.UpdateWindow强制全刷,如: //居中显示要素 IActiveView actView = axMapCont ...
- Atitit.图片木马的原理与防范 attilax 总结
Atitit.图片木马的原理与防范 attilax 总结 1.1. 像图片的木马桌面程序1 1.2. Web 服务端图片木马1 1.3. 利用了Windows的漏洞1 1.4. 这些漏洞不止Windo ...
- Creating External Lists From Code
You can create an external list based on an entity (external content type) defined in SharePoint Bus ...
- SharePoint 2013中Office Web Apps的一次排错
转自http://www.cnblogs.com/awpatp/archive/2013/06/06/3121420.html, 仅供自己查看 笔者尝试在自己的测试环境中为SharePoint 201 ...
- Android项目实战(十二):解决OOM的一种偷懒又有效的办法
在程序的manifest文件的application节点加入android:largeHeap=“true” 即可. 对,只需要一句话! 那么这行代码的意思是什么呢? 简单的说就是使该APP获取最大可 ...
- UITabBarController 微信
AppDelegate.m #import "AppDelegate.h" #import "FirstViewController.h" #import &q ...
- C语言复习
- iOS开发 使用RMStore简化内购代码 + 内购买订单验证
现在很多的app里面都添加了应用内购买,网上关于苹果证书的生成和设置的教程比较多,这里就不多赘述了,推荐几个个人觉得说的比较详细的网址: http://www.jianshu.com/p/86ac7d ...
- FFT教你做乘法(FFT傅里叶变换)
题目来源:https://biancheng.love/contest/41/problem/C/index FFT教你做乘法 题目描述 给定两个8进制正整数A和B(A和B均小于10000位),请利用 ...