• Nginx +tomcat的集群概念


    Nginx+Tomcat的集群概念

    Tomcat的介绍

    Tomcat 一种轻量级的WEB容器,它的适用场景中小型系统或者并发量不高的系统

    它是apache平台与Sun公司一起合作开发出来的,专门支持Servlet的一种WEB容器!

    img

    Tomcat的问题

    Tomcat 单位时间1S钟范围内,一般最多可以支持到500的并发(QPS),当超过500以后,性能将急速下降。当超过最大承受量以后,系统可能返回:Server is too Busy!

    问题:当系统的并发量(QPS)很高,怎么办?

    解决方案

    需要使用到集群

    **集群:**当单台服务器性能较低时,我们去购买更多的服务器,集中起来组成一个群体,统一对外听相同的服务

    集群可以提高系统的:整体响应性能,以及整体的可用性

    可用性:任何时间范围内容,系统都是正常的。按理来说,应该是:100%的时间

    但是业界中,能做到:99%的都不多,做的最好的:阿里 ,腾讯 (99.99%)

    当一台服务器的处理能力、存储空间不足时,不要企图去换更强大的服务器,对大型网站而言,不管多么强大的服务器,都满足不了网站持续增长的业务需求。这种情况下,更恰当的做法是增加一台服务器分担原有服务器的访问及存储压力。扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。其意思就是分摊到多个操作单元上进行执行。

    Nginx出来之前

    采用的apache + tomcat 来实现

    img

    **Apache存在的问题:**集成的模块太多,采用同步,阻塞式的处理方法,配置繁杂!(一般的程序员配不了)

    Nginx出来之后

    当Nginx出来之后,由于它更轻量,配置更简单,采用异步,非阻塞式的处理方案,来处理HTTP请求

    负载均衡机制

    负载均衡的常见算法(面试题):

    **轮训:**采用轮流执行请求的机制,完成对请求的派发

    **随机:**采用随机派发请求的机制,完成对请求的派发

    **最少连接:**需要Apache/Nginx判断集群中服务器,谁当前处理的请求最少,就派发给谁

    **权重:**设置服务器处理请求的比例,按照比例来完成对请求的派发

    **IP黏贴:**相同IP地址的客户发送的请求,统一的派发到同一台服务器上

    Nginx概述

    Nginx跟apache一样,都是HTTP服务器,但是它也有它自己的特点

    1、Nginx 是一种反向代理服务器。也是一个IMAP/POP3/SMTP/STOMP的服务器。

    2、Nginx提供负载均衡功能(跟apache一样),可以HTTP服务器对外提供服务

    3、处理静态资源文件,甚至可以提供对静态资源文件的缓存

    4、支持模块化的结构配置

    国内很多大厂都在使用Nginx,如:百度,京东,新浪,网易,腾讯,阿里……

    中小厂,就更喜欢用!

    反向代理与正向代理

    img

    反向代理

    从外网到内网的访问就是:反向代理

    **反向代理(Reverse Proxy):**Nginx接收用户的请求,然后再将用户的请求转发给内部网络服务器,并从内部服务器身上得到结果,然后再把结果再转发给客户端。 此时:Nginx向对于Tomcat来讲,它就是一台对外的代理服务器

    正向代理

    从内网到外网的访问就是:正向代理 例如:VPN(翻墙)

    Nginx的功能

    1、处理静态资源,也可以自动索引文件

    2、反向代理,让外部可以访问内部资源,并提供多种负载均衡算法和容错机制

    3、提供基于IP和域名的虚拟主机服务

    4、提供了模拟化的结构,同一个Proxy请求的多个子请求并发处理

    5、IMAP/POP3/SMTP 代理服务

    6、支持FLV (Flash视频)

    7、基于客户端 IP 地址和 HTTP 基本认证的访问控制;

    Nginx + Tomcat 集群架构图

    img

    **整体思想方向:**前端部署nginx服务器,后端部署tomcat应用。用户访问nginx服务器,对于静态资源nginx服务器直接返回到浏览器展示给用户,对动态资源的请求被nginx服务器转发(分配)到tomcat应用服务器,tomcat应用服务器将处理后得到的数据结构返回给nginx服务器,然后返回到浏览器展示给用户

    对于静态资源nginx服务器直接返回到浏览器展示给用户,对动态资源的请求被nginx服务器转发(分配)到tomcat应用服务器,tomcat应用服务器将处理后得到的数据结构返回给nginx服务器,然后返回到浏览器展示给用户

  • 相关阅读:
    Bugku MISC 啊哒 & 贝斯手
    【文件传输】查找等相关命令
    为什么说PMP+软考“1+1>2”?
    非模式物种ROSE超级增强子鉴定分析详解
    PID学习笔记:模拟加热系统的PID控制
    卵清白蛋白-没食子酸-葡聚糖(ovalbumin-gallic acid-dextran,OVAGA-DEX)共聚物
    Linux多线程服务端编程:使用muduo C++网络库 学习笔记 第七章 muduo编程示例(下)
    java-net-php-python-jspm综合彩妆店管理系统查重PPT计算机毕业设计程序
    自然语言处理(六):词的相似性和类比任务
    java计算机毕业设计web家庭财务管理系统MyBatis+系统+LW文档+源码+调试部署
  • 原文地址:https://blog.csdn.net/yangcan741147/article/details/114955577