Nginx+Tomcat负载均衡、动静分离群集

Tomcat简介

  • 最初是由 Sun 的软件构架师詹姆斯·邓肯·戴维森开发
  • 安装 Tomcat 后,安装路径下面的目录和文件,是使用或者配置 Tomcat 的重要文件。

Tomcat 重要目录

名称说明
bin存放启动和关闭 Tomcat 脚本
conf存放 Tomcat 不同的配置文件
doc存放 Tomcat 文档
lib存放 Tomcat 运行需要的库文件
logs存放 Tomcat 执行时的 LOG 文件
src存放 Tomcat 的源代码
webappsTomcat 的主要 Web 发布目录
work存放 jsp 编译后产生的 class 文件

Nginx 应用

Nginx 是一款非常优秀的 HTTP 服务器软件

  • 支持高达 50000 个并发连接数的响应
  • 拥有强大的静态资源处理能力
  • 运行稳定
  • 内存、CPU 等系统资源消耗非常低

目前很多大型网站都应用 Nginx 服务器作为后端网站程序的反向代理及负载均衡器,提升整个站点的负载并发能力。

Nginx 负载均衡实现原理

  • Nginx 实现负载均衡是通过反向代理实现

  • 反向代理原理

    反向代理(Reverse Proxy)方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
    
    一句话:通过代理服务器代理到后端服务器。
    

在这里插入图片描述

Nginx 配置反向代理的主要参数

  • uostream 服务池名{ }
    • 配置后端服务器池,以提供响应数据
  • proxy_pass http://服务池名
    • 配置将访问请求转发给后端服务器池的服务器处理

stream在四层,不通过URL(四层是传输层)
URL在七层(应用层)

Nginx 动静分离实现原理

动静分离原理

  • 服务端接受来自客户端的请求中,既有静态资源也有动态资源,静态资源由 Nginx 提供服务,动态资源 Nginx 转发至后端
    在这里插入图片描述

Nginx 静态处理优势

  • Nginx 处理静态页面的效率远高于 Tomcat 的出来能力
  • 若 Tomcat 的请求量为 1000 次,则 Nginx 的请求量为 6000 次
  • Tomcat 每秒的吞吐量为 0.6 M,Nginx 的每秒吞吐量为 3.6 M
  • Nginx 处理静态资源的能力是 Tomcat 处理的 6 倍

Nginx 负载均衡模式

  • rr 负载均衡模式
    每个请求按时间顺序逐一分配到不同的后端服务器,如果超过了最大失败次数后(max_fails,默认1),在失效时间内(fail_timeout,默认 10 秒),该节点失效权重变为 0 ,超过失效时间后,则恢复正常,或者全部节点都是 down 后,那么将所有节点都恢复为有效继续探测,一般来说 rr 可以根据权重来进行均匀分配。

  • least_conn 最少连接
    优先将客户端请求调度到当前连接最少的服务器。

  • ip_hash 负载均衡模式
    每个请求按访问 ip 的 hash 结果分配,这样每个访客固定一个后端服务器,可以解决 session 的问题,但是 ip_hash 会造成负载不均,有的服务请求接受多,有的服务请求接受少,所以不建议采用 ip_hash 模式,session 共享问题可用后端服务的 session 共享代替 nginx 的 ip_hash。

  • fair(第三方)负载均衡模式
    按后端服务器的响应时间来分配请求,响应时间短的优先分配。

  • url-hash(第三方)负载均衡模式
    基于用户请求的 uri 做 hash 和 ip_hash 算法类似,是对每个请求按 url 的 hash 结果分配,使每个 URL 定向到同一个后端服务器,但是也会造成分配不均的问题,这种模式后端服务器为缓存时比较好。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值