nginx中间件

Nginx简介

免费开源web服务,反向代理服务器,负载均衡服务器

正向代理 

  • 客户端非常明确要访问的服务器地址
  • 服务器只清楚请求来自哪个代理服务器,而不清楚来自哪个具体的客户端
  • 正向代理模式隐藏了真实客户端信息

 反向代理

  • 将请求按照一定的规则分发给后端的业务处理服务器
  • 请求的来源也就是客户端是明确的,但是请求具体由哪台服务器处理的并不明确了
  • 反向代理隐藏了服务器的信息

 

负载均衡

  • 将请求按照一定的规则(负载均衡)分发给后端的业务处理服务器 

负载均衡规则 

  • weight轮询(默认):接收到的请求按照顺序逐一分配到不同的后端服务器,即使在使用过程中,某一台后端服务器宕机,nginx会自动将该服务器剔除出队列,请求受理情况不会受到任何影响。 这种方式下,可以给不同的后端服务器设置一个权重值(weight),用于调整不同的服务器上请求的分配率;权重数据越大,被分配到请求的几率越大;该权重值,主要是针对实际工作环境中不同的后端服务器硬件配置进行调整的。
  • ip_hash:每个请求按照发起客户端的ip的hash结果进行匹配,这样的算法下一个固定ip地址的客户端总会访问到同一个后端服务器,这也在一定程度上解决了集群部署环境下session共享的问题。
  • fair:智能调整调度算法,动态的根据后端服务器的请求处理到响应的时间进行均衡分配,响应时间短处理效率高的服务器分配到请求的概率高,响应时间长处理效率低的服务器分配到的请求少;结合了前两者的优点的一种调度算法。但是需要注意的是nginx默认不支持fair算法,如果要使用这种调度算法,请安装upstream_fair模块
  • url_hash:按照访问的url的hash结果分配请求,每个请求的url会指向后端固定的某个服务器,可以在nginx作为静态服务器的情况下提高缓存效率。同样要注意nginx默认不支持这种调度算法,要使用的话需要安装nginx的hash软件包

Nginx-特性

  • 高性能、高稳定
  • 模块化设计、较好的扩展性
  • 热部署,不停服务更新配置文件、更换日志、更新服务器程序版本
  • 资源占用少、低内存消耗

Nginx-基本架构

运行模式:master-worker工作模式(多进程模式)

  • master进程:主要用来管理worker进程,包含:接收来自外界的信号,向各worker进程发送信号,监控worker进程的运行状态,当worker进程退出后(异常情况下),会自动重新启动新的worker进程
  • worker进程:工作进程,用来处理请求

 热部署( ./nginx -s reload):

  • 执行命令时,我们是启动一个新的nginx进程,而新的nginx进程在解析到reload参数后,就知道我们的目的是控制nginx来重新加载配置文件了,它会向master进程发送信号,master进程在接到信号后,向所有老的worker进程发送信号,告诉他们可以光荣退休了。新的worker在启动后,就开始接收新的请求,而老的worker在收到来自master的信号后,就不再接收新的请求,并且在当前进程中的所有未处理完的请求处理完成后,再退出

Nginx配置 

main                                # 全局配置
events {                            # nginx工作模式配置
}
http {                                # http设置
    ....
	upstream name {                    # 负载均衡配置
        ....
    }	
    server {                        # 服务器主机配置
        ....
        location {                    # 路由配置
            ....
        }
    }
}

Nginx性能相关参数

1、工作进程数 2、单个工作进程最大文件句柄数 3、单个工作进程最大连接数 4、压缩 5、缓存

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值