1 场景一:如图 在单机的情况下例如:单个tomcat 有100w条请求的时候,而默认tomcat支持的并发数量并不能达到要求,所所以单台服务器 扛不住 容易宕机,瘫痪

2 高并发的情况下要让服务器不宕机 挂点,则需要集群 如图:

3 在tomcat集群的情况下,客户端的请求,有可能会出现所有的请求都交给了同一个tomcat处理,导致那个tomcat高并发宕机,而其余集群的tomcat却一直处于闲置状态。所有应该有一种办法能解决这个问题,可以使用nginx

4:nginx反向代理服务器处理集群时候的请求转发

流程:客户端发送请求经过反向代理服务器,代理服务器根据配置的策略(权重,轮询,ip绑定) 将请求转发给tomcat,这样会避免在集群的情况下,有的服务器处于负荷运行,而有的服务器却是闲置状态,达到一个均衡。(负载均衡),使用反向代理服务器,客户端发送请求代理服务器的时候,请求的是nginx的公网ip,nginx和tomcat集群 处在一个局域网内,nginx转发的时候 是通过内网转发,不会暴露tomact集群的真实ip,提高了安全性

5:在集群中会出现哪些问题:

集群(同一个项目 部署到不同的服务器)

1.分布式Job幂等性

2.会话共享问题 A客户端连接A 服务器以后,A 客户端 的请求在被分到B 服务器,

3.分布式生成全局id(生成订单号)A 服务器生成订单号的时候,B服务器也生成订单号,可能导致生成的订单号相同,(提前生成一批订单号存放到reids)

6.什么是DNS解析:域名解析

域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。ip是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。

例如:为什么输入localhost和输入127.0.0.1 是一样的。www.baidu.com 为什么通过这个域名就能找到 百度的服务器,这个靠的就是域名解析,在本地机器上 有个hosts文件 该文件里面可以配置 域名 对应的ip地址,如果本地hosts文件没有 ,则会由电信运营商 帮助解析,这样可以不用 请求百度的时候,还需要输入ip地址 和端口,更容易被记住

当我在请求地址输入www.jiahou.com的时候 和输入 localhost的效果是一样 都会解析成ip127.0.0.1

7 简单了解了一下域名解析那么nginx是如何和域名解析相关联的

这里要了解nginx的配置文件内容了:

https://www.cnblogs.com/920913cheng/p/10475864.html

在高并发情况nginx的作用的更多相关文章

  1. Linux的虚拟内存管理-如何分配和释放内存,以提高服务器在高并发情况下的性能,从而降低了系统的负载

    Linux的虚拟内存管理有几个关键概念: Linux 虚拟地址空间如何分布?malloc和free是如何分配和释放内存?如何查看堆内内存的碎片情况?既然堆内内存brk和sbrk不能直接释放,为什么不全 ...

  2. 小D课堂 - 新版本微服务springcloud+Docker教程_6-05 高级篇幅之高并发情况下

    笔记 5.高级篇幅之高并发情况下接口限流特技         简介:谷歌guava框架介绍,网关限流使用 1.nginx层限流 2.网关层限流 开始 mysql最大的连接数就是3千多.如果想把应用搞好 ...

  3. 关于WCF服务在高并发情况下报目标积极拒绝的异常处理

    最近弄了个wcf的监控服务,偶尔监控到目标服务会报一个目标积极拒绝的错误.一开始以为服务停止了,上服务器检查目标服务好好的活着.于是开始查原因. 一般来说目标积极拒绝(TCP 10061)的异常主要是 ...

  4. WCF服务在高并发情况下报目标积极拒绝的异常处理 z

    http://www.cnblogs.com/kklldog/p/5037006.html wcf的监控服务,偶尔监控到目标服务会报一个目标积极拒绝的错误.一开始以为服务停止了,上服务器检查目标服务好 ...

  5. Jackson高并发情况下,产生阻塞

    情况:在高并发情况下,查看线程栈信息,有大量的线程BLOCKED. 从线程栈得知,线程栈中出现了阻塞,锁在了com.fasterxml.jackson.databind.ser.SerializerC ...

  6. 高并发情况下分布式全局ID

    1.高并发情况下,生成分布式全局id策略2.利用全球唯一UUID生成订单号优缺点3.基于数据库自增或者序列生成订单号4.数据库集群如何考虑数据库自增唯一性5.基于Redis生成生成全局id策略6.Tw ...

  7. c# redis 利用锁(StackExchange.Redis LockTake)来保证数据在高并发情况下的正确性

    之前有写过一篇介绍c#操作redis的文章 http://www.cnblogs.com/axel10/p/8459434.html ,这篇文章中的案例使用了StringIncrement来实现了高并 ...

  8. 突破10万高并发的nginx性能优化经验(含内核参数优化)

    写的很好,推荐阅读. 转载:http://www.cnblogs.com/kevingrace/p/6094007.html 在日常的运维工作中,经常会用到nginx服务,也时常会碰到nginx因高并 ...

  9. 高并发情况下Linux系统及kernel参数优化

    众所周知在默认参数情况下Linux对高并发支持并不好,主要受限于单进程最大打开文件数限制.内核TCP参数方面和IO事件分配机制等.下面就从几方面来调整使Linux系统能够支持高并发环境. Iptabl ...

随机推荐

  1. html和jsp区别

    html和jsp的区别及优缺点   ♥ HTML(Hypertext Markup Language)文本标记语言,它是静态页面,和JavaScript一样解释性语言,为什么说是解释性语言呢?因为,只 ...

  2. [sgu P155] Cartesian Tree

    155. Cartesian Tree time limit per test: 0.25 sec. memory limit per test: 65536 KB input: standard i ...

  3. centos 安装composer

    1 下载composer.phar curl -sS https://getcomposer.org/installer | php 2 设置全局调用 mv composer.phar /usr/lo ...

  4. centos6升级python

    CentOS 6中,默认安装了Python 2.6.而pip,jupyter这样的常用工具是不支持Python 2.6的.为了使用这些工具,就必须将Python 2.6升级到Python 2.7以上的 ...

  5. JAVA 根据设置的概率生成随机数

    import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; i ...

  6. ubuntu1604使用之旅——软件源更新(vim安装)

    sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup sudo gedit /etc/apt/sources.list # deb cd ...

  7. MFC VC++获取当前程序的运行路径

    ]; GetModuleFileName(, szDir, ); int i; i = lstrlen(szDir) - ; ) { if(szDir[i] == _T('\\')) { szDir[ ...

  8. 小程序仿QQ侧滑例子

    缩放:wxml <!--page/one/index.wxml--> <view class="page"> <view class="pa ...

  9. Js/对数组的认识。

    1.是对数组的声明:   var auditTaskIds = []; 我一般的写法.   var auditTaskIds1 = [];  2.向数组中添加元素:   auditTaskIds.pu ...

  10. webpack配置文件--(loader)

    这篇写的很详细 https://segmentfault.com/a/1190000012718374#articleHeader9 主要的配置项: test:必须 匹配需要处理的文件的扩展名 use ...