启动
启动代码格式:nginx安装目录地址 -c nginx配置文件地址
例如:
[root@LinuxServer sbin]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
停止
nginx的停止有三种方式:
从容停止
1、查看进程号
[root@LinuxServer ~]# ps -ef|grep nginx
2、杀死进程
[root@LinuxServer ~]# kill -QUIT 2072快速停止
1、查看进程号
[root@LinuxServer ~]# ps -ef|grep nginx【linux结束进程快捷键 linux停止命令输出】2、杀死进程
[root@LinuxServer ~]# kill -TERM 2132 或 [root@LinuxServer ~]# kill -INT 2132强制停止
[root@LinuxServer ~]# pkill -9 nginx
重启
1、验证nginx配置文件是否正确
方法一:进入nginx安装目录sbin下 , 输入命令./nginx -t
看到如下显示nginx.conf syntax is ok
nginx.conf test is successful
说明配置文件正确!
方法二:在启动命令-c前加-t
2、重启Nginx服务
方法一:进入nginx可执行目录sbin下 , 输入命令./nginx -s reload 即可
方法二:查找当前nginx进程号 , 然后输入命令:kill -HUP 进程号 实现重启nginx服务
Nginx 的整体架构Nginx 里有一个 master 进程和多个 worker 进程 。master 进程并不处理网络请求 , 主要负责调度工作进程:加载配置、启动工作进程及非停升级 。worker 进程负责处理网络请求与响应 。
master进程主要用来管理worker进程 , 具体包括如下4个主要功能:
接收来自外界的信号 。
向各worker进程发送信号 。
监控woker进程的运行状态 。
当woker进程退出后(异常情况下) , 会自动重新启动新的woker进程 。
woker进程主要用来处理基本的网络事件:
多个worker进程之间是对等且相互独立的 , 他们同等竞争来自客户端的请求 。
一个请求 , 只可能在一个worker进程中处理 , 一个worker进程 , 不可能处理其它进程的请求 。
worker进程的个数是可以设置的 , 一般我们会设置与机器cpu核数一致 。同时 , nginx为了更好的利用多核特性 , 具有cpu绑定选项 , 我们可以将某一个进程绑定在某一个核上 , 这样就不会因为进程的切换带来cache的失效 。
Ngnix 是如何实现高性能的?
事件驱动模型
基于异步及非阻塞的事件驱动模型 , 可以说是 Nginx 得以获得高并发、高性能的关键因素 。这一点上和 Netty 类似 , 底层都是使用的 BSD kqueue、Linux epoll 及 Solaris event ports 。
多进程机制
使用多进程的好处有两点:
进程之间不共享资源 , 不需要加锁 , 减少了使用锁对性能造成的影响 , 同时降低编程的复杂度 , 降低开发成本 。
采用独立的进程 , 可以让进程互相之间不会影响 , 如果一个进程发生异常退出时 , 其它进程正常工作 , master 进程则很快启动新的 worker 进程 , 确保服务不会中断 , 从而将风险降到最低 。
推荐阅读
- 一个程序只能对应一个进程吗 影响遗忘进程的因素
- linux系统hosts文件位置 hosts在哪里修改
- linux普通用户修改root密码 linux修改root密码命令
- linux虚拟机安装mysql步骤 虚拟机安装mysql是数据库
- linux服务器清理缓存方法 linux清缓存怎么清理
- 什么花代表结束
- 姚晨和凌潇肃结束七年婚姻关系 凌潇肃和姚晨怎么回事
- linux编程介绍 linux内核编程入门篇
- linux创建用户命令代码讲解 linux创建用户命令代码
- 数码知识:iphone11怎么删除进程 删除进程教程