一:PHP 信号数据结构
- SIGINT / SIGTERM / SIGQUIT函数
- 退出FPM,在master收到退出信号后将向全部的worker进程发送退出信号,而后master退出。spa
- SIGUSR1操作系统
- 从新加载日志文件,生产环境中一般会对日志进行切割,切割后会生成一个新的日志文件。日志
- 若是fpm不从新加载将没法继续写入日志,这个时候就须要向master发送一个USR1的信号。进程
- SIGUSR2it
- 重启FPM ,首先master也是会向全部的worker进程发送退出信号,而后master会调用execvp()从新启动fpm,最后旧的master退出。ast
- SIGCHLD配置
- 这个信号是子进程退出时操做系统发送给父进程的,子进程退出时,内核将子进程置为僵尸状态,这个进程称为僵尸进程。数据
- 它只保留最小的一些内核数据结构,以便父进程查询子进程的退出状态,只有当父进程调用wait或者waitpid函数查询子进程退出状态后子进程才了结止。
- fpm中当worker进程由于异常缘由(好比coredump了)退出而非master主动杀掉时master将受到此信号
- 这个时候父进程将调用waitpid()查下子进程的退出,而后检查下是否是须要从新fork新的worker
一:PHP 基本操做
三:PHP 配置