zoukankan      html  css  js  c++  java
  • 一例swoole_process运行swoole_http_server

    • swoole_process
    swoole_process('执行的文件路径','文件所需的参数');//利用swoole-process执行一个外部脚本
    swoole_process__construct(回调函数, redirect_stdin_stdout, 是否创建进程通信用的管道)
    参数redirect_stdin_stdout 值为true子进程返回的结果不输出到屏幕,false输出到屏幕
    swoole_process::wait()//程序执行完毕后,回收子进程
    • 用swoole_http_server实现一例http服务器
    <?php
        $server = new swoole_http_server('127.0.0.1',9502);
        $server->on('request',function($request,$response){
            $response->end("there is a game of love");
    });
        $server->start();
    ?>
    • 实现一个swoole_process对象管理的swoole_http_server进程(文件名:myhttpserver.php)
    <?php
    //每个进程都有一个进程ID
    $sw = new swoole_process(function(swoole_process $sw){
        $sw->exec('/usr/bin/php7',[__DIR__.'/../myhttpserver/myhttpserver.php']);
    },false);
    $pid =$sw->start();
    echo $pid.PHP_EOL;
    swoole_process::wait(); #等待程序运行完毕后,回收子进程
    • 在linux终端切换到程序所在位置调用php运行脚本swprocess.php
    下图所示正是脚本文件swprocess.php中实例化的swoole_process进程也就是$pid = $sw->start()返回的那个$pid

    • ps aux|grep swprocess.php
    这段代码用于查看运行swprocess.php的进程信息,由此可以看出,进程号12430是12431(swprocess.php脚本中开启的那段swoole_process)的父进程

    • pstree -p 13430  该命令的作用是查看进程的分支

    • ps -asf |grep myhttpserver 
    这里的myhttpserver就是脚本swprocess.php中开启子进程执行($sw->exec())的swoole_http_server进程,也就是运行myhttpserver.php的那个进程

  • 相关阅读:
    sklearn使用高斯核SVM显示支持向量
    决策树和随机森林分类
    线性回归曲线和过拟合判断
    wave数据集的回归曲线
    用KNN实现iris的4分类问题&测试精度
    pandas绘制矩阵散点图(scatter_matrix)的方法
    6种字符串数组的java排序 (String array sort)
    Spring中Quartz的配置
    jquery easyui datagrid js获取记录数 页数 当前页
    EasyUI的treegrid组件动态加载数据问题的解决办法
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/10984643.html
Copyright © 2011-2022 走看看