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规则、稳定性、静态文件处理、内存消耗等方面都比较突出。
Nginx基本常用命令
nginx -s reopen #重启
nginx nginx -s reload #重新加载Nginx配置文件,然后以优雅的方式重启
nginx nginx -s stop #强制停止Nginx服务
nginx -s quit #优雅地停止Nginx服务(即处理完所有请求后再停止服务)
nginx -p prefix #设置前缀路径(默认是:/usr/share/nginx/)
nginx -c filename #设置配置文件(默认是:/etc/nginx/nginx.conf)
nginx -g directives #设置配置文件外的全局指令
nginx -?,-h #打开帮助信息
nginx -v #显示版本信息并退出
nginx -V #显示版本和配置选项信息,然后退出
nginx -t #检测配置文件是否有语法错误,然后退出
nginx -T #检测配置文件是否有语法错误,转储并退出
nginx -q #在检测配置文件期间屏蔽非错误信息
kill all nginx #杀死所有nginx进程