1 nginx为什么高性能?
nginx由C语言开发, 以多进程方式工作.
nginx在启动后,会有一个master进程和多个worker进程。master进程主要用来管理worker进程
包含:
- 接收来自外界的信号,
- 向各worker进程发送信号,
- 监控worker进程的运行状态,
- 当worker进程退出后(异常情况下),会自动重新启动新的worker进程。
2 nginx进程模型
一个请求,只可能在一个worker进程中处理,
多个worker进程之间是对等的,他们同等竞争来自客户端的请求
master来管理worker进程,所以我们只需要与master进程通信就行了。
master进程会接收来自外界发来的信号,再根据信号做不同的事情
要控制nginx,只需要通过kill向master进程发送信号