前言

什么是Nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,具有内存少,高并发能力强特点。

1,处理静态文件,索引文件以及自动索引;打开文件描述符缓冲
2,无缓存的反向代理加速,简单的负载均衡和容错。

Nginx国内应用

Nginx 超越Apache的高性能和稳定性,使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,其中有淘宝、新浪、网易、腾讯等门户网站,六间房、酷6等视频分享网站,Discuz!、水木社区等知名论坛,豆瓣、YUPOO等新兴Web 2.0网站。

Nginx神秘面纱揭开

百度百科:Nginx做为互联网高并发的必备技术,其并发能力确实在同类型的网页服务器中表现很好,掌握Nginx技术应从哪着手






Nginx 限流

Nginx为我们提供了请求限制模块(ngx_http_limit_req_module)、基于令牌桶算法的流量限制模块(ngx_stream_limit_conn_module),可以方便的控制令牌速率,自定义调节限流,实现基本的限流控制…

请求限制

请求限制的功能来自于 ngx_http_limit_req_module 模块。使用它需要首先在 http 配置段中定义限制的参照标准和状态缓存区大小。

limit_req_zone 只能配置在 http 范围内;

$binary_remote_addr 表示客户端请求的IP地址;

mylimit 自己定义的变量名;

rate 请求频率,每秒允许多少请求;

limit_reqlimit_req_zone 对应,burst 表示缓存住的请求数,也就是任务队列。

并发限制

Nginx 并发限制的功能来自于 ngx_http_limit_conn_module 模块,跟请求配置一样,使用它之前,需要先定义参照标准和状态缓存区。

limit_conn_zone 只能配置在 http 范围内;

$binary_remote_addr 表示客户端请求的IP地址;

myconn 自己定义的变量名(缓冲区);

limit_rate 限制传输速度

limit_connlimit_conn_zone 对应,限制网络连接数

在这里分享一位阿里的架构师朋友他录制的“Nginx高并发分流技术,让你的项目起飞”专题视频,对于面试中的难点-高并发限流这块,是很好的补充。

视频内容如下:

1,进阶Nginx分流技术指南;
2,Web项目性能提升万倍实战;
3,Nginx动静分离效果实战;
4,Nginx单节点事故现场重现;
5,高可用Nginx主从模式实战。