PHP中对于(并发/并行)相关概念

PHP中对于并发/并行相关概念

  • 推荐链接
  • [多进程(fork / pcntl_fork())](#多进程(fork / pcntl_fork()))
  • 多线程(pthreads)
  • 并行扩展(parallel)
  • [异步任务池 / 协程(Swoole / Workerman)](#异步任务池 / 协程(Swoole / Workerman))
  • [多进程 CLI 调度(spawn/exec 多个 PHP CLI 进程)](#多进程 CLI 调度(spawn/exec 多个 PHP CLI 进程))

推荐链接

链接目录

并发(concurrency)是"有很多任务在同一时间段里交替进行",不一定同时运行;

并行(parallelism)是"多个任务在同一时刻同时运行"(真正并行需要多核/多CPU)。

多进程(fork / pcntl_fork())

通过操作系统把当前进程复制出若干子进程(每个子进程拥有自己的内存地址空间)。父子进程可以通过管道、socket、共享内存或文件/DB通信(IPC)。

javascript 复制代码
123

多线程(pthreads)

线程是进程内的执行单元,多个线程共享同一进程的内存空间(变量、资源共享更方便)。

并行扩展(parallel)

parallel 是一个较新的 PECL 扩展,提供线程/任务并行模型(可创建 Runtime/Threads 并在其中运行 closures),比 pthreads 更现代、更安全。每个 Runtime 有自己的上下文(类似轻量进程)。

异步任务池 / 协程(Swoole / Workerman)

通过事件循环 + 协程(轻量线程)/回调,把大量 IO 操作以非阻塞方式运行在单个或少量线程/进程上。协程看起来像同步代码,但底层是异步调度。

多进程 CLI 调度(spawn/exec 多个 PHP CLI 进程)

主进程以 shell/系统调用 exec/popen/proc_open 启动多个独立的 php CLI 进程(每个运行一个脚本/命令),每个子进程负责一部分工作(例如插入数据库的一批数据),主进程等待或轮询子进程完成。

相关推荐
ZHOUPUYU1 小时前
PHP与WebSocket实时通信的原理到生产级应用
开发语言·html·php
困死,根本不会1 小时前
树莓派 SSH 连接排错实录:从 IP 网段到主机密钥变更,再到 VNC 自启动
开发语言·ssh·php·树莓派
天远云服4 小时前
驾培系统车辆核验实战:PHP集成天远二手车估值API实现学员车辆信息自动化管理
大数据·开发语言·自动化·php
ZHOUPUYU4 小时前
PHP异步编程实战ReactPHP到Swoole的现代方案
开发语言·php
lay_liu4 小时前
QoS质量配置
开发语言·智能路由器·php
Maguyusi5 小时前
Debian13(trixie) 安装php8.5 php-fpm8.5
开发语言·php·lsky pro
乐6825 小时前
CISCN2026半决赛wp
python·web安全·php
AC赳赳老秦5 小时前
OpenClaw 系统监控实战指南:构建高效的电脑/服务器状态监控与自动告警系统
服务器·开发语言·人工智能·php·ai-native·deepseek·openclaw
rookieﻬ°14 小时前
PHP框架漏洞
开发语言·php
CQU_JIAKE19 小时前
3.21【A】
开发语言·php