• php程序守护进程


    php命令程序实习守护进程2种方式:

    1.使用nohup

    nohup php myprog.php > log.txt &

    2.使用程序

    function daemonize()
    {
    $pid = pcntl_fork();
    if ($pid == -1)
    {
    die("fork(1) failed!
    ");
    }
    elseif ($pid > 0)
    {
    //让由用户启动的进程退出
    exit(0);
    }
    
    //建立一个有别于终端的新session以脱离终端
    posix_setsid();
    
    $pid = pcntl_fork();
    if ($pid == -1)
    {
    die("fork(2) failed!
    ");
    }
    elseif ($pid > 0)
    {
    //父进程退出, 剩下子进程成为最终的独立进程
    exit(0);
    }
    }
    
    daemonize();
    sleep(1000);

    上面这个代码首先需要安装pcntl扩展。用上面代码即可实现守护进程化,当你的PHP程序需要转为后台运行时,只需要调用一次封装好的函数daemonize()即可。
    注:这里没有实现标准输入输出的重定向。

    根据端口来查询进程:

    直接查看端口被那个进程给占用了,当php守护进程脚本不知道是那个进程,直接可以通过这个命令来查

    lsof -i:8060

    netstat

  • 相关阅读:
    团队作业WEEK3
    团队作业week2#
    团队作业week2
    Team Homework #3
    learning from the previous teams
    Team Homework #2
    Java语法基础相关
    关于Java的专有名词
    图片验证码
    省市二级联动
  • 原文地址:https://www.cnblogs.com/shiwenhu/p/5222885.html
Copyright © 2020-2023  润新知