nginx概念
维基百科基本对于nginx定义
nginx是什么?
Nginx是一款高性能的htp服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。
nginx主要使用场景
-
高性能的Web服务器
Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器,同时也⽀持50000个并发连接数,其特点是CPU和内存的占⽤也⾮常的低,10000个没有活动的连接才占⽤2.5M的内存。
-
反向代理服务器
- 正向代理
在浏览器中配置代理服务器的相关信息,通过代理服务器访问⽬标⽹站,代理服务器收到⽬标⽹站的响应之后,会把响应信息返回给我们⾃⼰的浏览器客户端
- 反向代理
浏览器客户端发送请求到反向代理服务器(⽐如Nginx),由反向代理服务器选择原始服务器提供服务获取结果响应,最终再返回给客户端浏览器
- 负载均衡服务器
网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况.负载均衡就是为了解决⾼负载的问题。
- 动静分离
nginx主要特点
-
⾼并发,高性能
-
内存消耗小
-
扩展性好,nginx具有模块化设计,允许第三方开发
-
跨平台:Nginx可以在⼤多数类unix操作系统上编译运⾏,⽽且也有windows版本
-
Nginx的上⼿⾮常容易,配置也⽐较简单
-
稳定性好,宕机概率很低
-
nginx是一个异步非阻塞的事件驱动模型
-
支持热部署
Nginx与Apache对比
由上图可以知道,Nginx在反向代理、Rewrite规则、稳定性、静态文件处理、内存消耗等方面都比较突出。