宝塔Linux面板Redis进程守护(使用Supervisor)
最近网站老是被打,每次都是给我redis跑死。今天研究了下可以用Supervisor对redis进行进程守护。当Supervisor检测到redis停止后会立即进行启动。
整体步骤非常简单,操作我都做了截图,大家看一遍就会了。
1.安装Supervisor
宝塔面板自带有Supervisor程序,可以在软件列表里直接安装。软件是免费的。
安装后先放这,我们设置一下redis。
2.修改redis配置文件
redis配置文件默认有个自带守护,我们需要将其关闭。
打开配置文件:/www/server/redis/redis.conf
或是在宝塔redis管理界面点击配置文件。
搜索“daemonize”
大概在138行,将”daemonize yes“改为”daemonize no“。
搜索“supervisor”
大概在149行,同样设置为no,宝塔面板redis配置文件默认这里是no。
然后停止redis进程。直接在管理界面停止。
必须停止,否则守护进程无法启动报FATAL错误。
3.创建Supervisor守护进程
打开宝塔面板的Supervisor管理器。添加守护进程
名称:随便写 启动用户:root 运行目录:/www/server/redis/(宝塔的redis默认安装在这个目录里) 启动命令:/etc/init.d/redis start 进程数量:1
然后直接确定。
4.其他说明
此时就已经创建完毕redis的进程守护。
前面我们手动停止了redis,现在应该自动启动了。你也可以再次手动关闭下redis看看,应该会发现会再次启动。
在Supervisor日志里我们可以看到redis的启动记录。
除了redis之外,Supervisor也可以对MySQL、nginx、php等程序进行守护。
进程守护大多数用于程序异常停止的启动使用。
如果你是配置资源不足导致的停止,建议考虑其他方式解决问题。比如程序优化、设置缓存、增加硬件配置等方式。
nginx:/etc/init.d/nginx start
apache:/etc/init.d/httpd start
MySQL:/etc/init.d/mysqld start
FTP:/etc/init.d/pure-ftpd start
PHP:/etc/init.d/php-fpm-{52|53|54|55|56|70|71|72|73|74} start
Memcached:/etc/init.d/memcached start