前言
什么是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_req
与 limit_req_zone
对应,burst
表示缓存住的请求数,也就是任务队列。
并发限制
Nginx 并发限制的功能来自于 ngx_http_limit_conn_module
模块,跟请求配置一样,使用它之前,需要先定义参照标准和状态缓存区。
limit_conn_zone
只能配置在 http
范围内;
$binary_remote_addr
表示客户端请求的IP地址;
myconn
自己定义的变量名(缓冲区);
limit_rate
限制传输速度
limit_conn
与 limit_conn_zone
对应,限制网络连接数
在这里分享一位阿里的架构师朋友他录制的“Nginx高并发分流技术,让你的项目起飞”专题视频,对于面试中的难点-高并发限流这块,是很好的补充。
视频内容如下:
1,进阶Nginx分流技术指南;
2,Web项目性能提升万倍实战;
3,Nginx动静分离效果实战;
4,Nginx单节点事故现场重现;
5,高可用Nginx主从模式实战。