zoukankan      html  css  js  c++  java
  • swoole(2)swoole进程结构

    一:进程基本概念

    1. 系统中正在运行的一个程序,程序一旦运行就是进程
    2. 一个进程可以拥有多个线程
    3. 核心内容分为两部分:内存(进程创建时从系统分配的,它所创建的变量都会存储在这一块内存中)、上下文环境

    二:swoole进程结构

    • master进程(主进程)
    • manager进程(管理进程)
    • worker进程(工作进程)
    • task进程(异步任务工作进程)

    client与server的交互:

    1. client请求到达main reactor,与master进程中的某个reactor线程连接
    2. main reactor将请求注册给对应的reactor
    3. 客户端有变化时reactor将数据交给worker处理
    4. worker处理完毕,通过进程间通信,发给对应的reactor
    5. reactor将响应结果发给相应的连接请求处理完成

    关系:一个更通俗的比喻,假设Server就是一个工厂,那Reactor就是销售,接受客户订单。而Worker就是工人,当销售接到订单后,Worker去工作生产出客户要的东西。而TaskWorker可以理解为行政人员,可以帮助Worker干些杂事,让Worker专心工作。 

    三:进程及其相对应事件绑定

    参考地址:https://wiki.swoole.com/wiki/page/p-event/onStart.html

    1. 服务器关闭程序终止时的最后一次事件是onShutdown
    2. 服务器启动成功后,onStart、onManager、onWorkerStart不是顺序执行的
    3. 所有事件回掉均在$server->start后发生,start之后写的代码时无效代码
  • 相关阅读:
    字符串 date 转标准 yyyyMMdd 格式
    stringBuild置空方法
    composer 加速
    php7.0 Mongodb 查询
    PHP7 mongo 操作
    php 简单的对称加密
    PHP 百度关键字
    php redis 写入读取的两个class
    php ci 框架自定义函数
    app已损坏,打不开,你应该将它移动到废纸篓
  • 原文地址:https://www.cnblogs.com/8013-cmf/p/12403863.html
Copyright © 2011-2022 走看看