如何将我的php脚本以守护进程的方式一直运行?
写好php脚本。建议定期检测内存占用,核心逻辑就不写了。这个跟业务有关。 if(memory_get_usage()>100*1024*1024){ exit(0);//大于100M内存退出程序,防止内存泄漏被系统杀死导致任务终端 } 假设该php文件的路径为/root/
run.php
打开终端 setsid php /root/run.php
> /dev/null & 编辑进程监控脚本,当进程不存在时,自动重启 /root/monitor.sh
#!/bin/bash alive=`ps aux|grep root\/run|grep -v grep|wc -l` if [ $alive -eq 0] then php /root/run.php
> /dev/null & fi 添加计划任务(每分钟检测一次) crontab -e * * * * * /root/monitor.sh
> /dev/null &phpStudy学习之,运行管理,启动关闭运行模式?
phpstudy是一款集成的php运行环境。如果apache一起动就关闭,说明服务没有安装,或者端口有冲突,导致启动失败自动关闭。解决办法如下:;
打开phpstudy;运行模式任意选择【非服务模式,系统服务】;
鼠标点击其他选项菜单;
选择打开配置文件;选择httpd-conf;
将80端口改成其它没有被占用的端口;重启服务。
如何实现Laravel框架定时任务?
一楼回答基本上是Laravel框架定时任务的正常用法,官方文档有明确说明。
其次我补充的是定时任务看着很麻烦,其实归根结底还是Linux的相关进程,所以完全可以不用理会laravel的东西,写一个php文件读取你指定的txt文档,网站后台可以添加定时任务时,将定时任务写入txt文件。比如格式:“任务指令#间隔时间”,然后用守护进程的方式执行这个PHP文件即可。
另外一种方式就是写个service,让这个PHP文件开机启动。在服务器宕机重启等操作中不需要人工维护项目相关任务。
laravel文档实现的太复杂了。上面两种方法是目前最方便的。