码迷,mamicode.com
首页 > 其他好文 > 详细

关于nginx

时间:2018-08-25 14:14:14      阅读:117      评论:0      收藏:0      [点我收藏+]

标签:占用   负载   阻塞   相同   文件   端口   ssi   cep   获取   

基础

nginx是一款轻量级的web服务器/反向代理服务器及电子邮件代理服务器,特点是占用内存少,并发处理能力强

nginx启动后,在unix系统中以daemon的方式在后台运行,后台包括一个master进程和多个worker进程,每个worker进程都是从master fork过来的
master进程用于管理其他的worker进程,worker进程之间互相独立
nginx采用异步非阻塞的方式处理请求,可以同时处理上千万个请求
nginx利用用户传入的超时时间生成一个定时器,放在红黑树中进行维护

nginx启动时,先读取配置文件,获取到需要监听的端口和ip,然后在master进程中初始化这些监控的socket,再fork出worker进程,然后worker进程会监听新的连接请求

nginx在处理请求的时候采用的状态机来解析请求,提高效率

nginx通过ngx_accept_disable变量来控制每个worker进程的连接数,防止某个worker进程处于非常繁忙而其他进程处于空闲状态

nginx的负载均衡策略
    1、轮询
    每个请求按时间顺序逐一分配到后端服务器,如果后端服务器down掉,会自动剔除
    可以在上面加上权重,用于后端服务器性能不均匀的情况
    
    2、ip_hash
    根据用户请求ip来计算服务器地址,使得同一个ip的所有请求都落在同一个服务器上,可以解决session问题
    
    3、fair
    按后端服务器响应时间来分配请求,响应时间短的优先分配
    
    4、url_hash
    按url的Hash结果来分配请求,使得相同的url总是落在同一个服务器上,使用于后端服务器为缓存的情况

关于nginx

标签:占用   负载   阻塞   相同   文件   端口   ssi   cep   获取   

原文地址:https://www.cnblogs.com/canmeng-cn/p/9533196.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!