PHP如何实现无血缘关系多进程间的命名管道通信?
- 内容介绍
- 文章标签
- 相关推荐
本文共计516个文字,预计阅读时间需要3分钟。
进程通信:1、中断系统;2、无名管道【半双工通信】。仅用于父子进程之间的通信,没有名字,称为无名管道,传输的数据是无格式的,双方可自行定义格式,不依赖于进程通信。
进程通信:1、中断系统
2、无名管道
只能用于父子进程,兄弟进程之间的通信,且没有名字,称为无名管道,传输的数据是无格式的,双方可自己定义格式,不依赖于文件系统。
推荐:《PHP教程》
3、命名管道
用于无名管道无法实现的骚操作 ,没任何关系的进程也能进行通信
PS:务必了解进程阻塞,非阻塞原理,管道文件,进程
应用场景举例说明: 如使用 php 的 socket API 编写一个类似 workerman 的网络框架,可以做统一中断信号事件处理
中断处理程序只负责接受中断请求,通过管道写端写入数据,主进程通过监听文件描述符上的事件再处理。不会让中断处理程序等待过长的时间。
当然通过命名管道也可以实现跨语言进程间的通信。
本文共计516个文字,预计阅读时间需要3分钟。
进程通信:1、中断系统;2、无名管道【半双工通信】。仅用于父子进程之间的通信,没有名字,称为无名管道,传输的数据是无格式的,双方可自行定义格式,不依赖于进程通信。
进程通信:1、中断系统
2、无名管道
只能用于父子进程,兄弟进程之间的通信,且没有名字,称为无名管道,传输的数据是无格式的,双方可自己定义格式,不依赖于文件系统。
推荐:《PHP教程》
3、命名管道
用于无名管道无法实现的骚操作 ,没任何关系的进程也能进行通信
PS:务必了解进程阻塞,非阻塞原理,管道文件,进程
应用场景举例说明: 如使用 php 的 socket API 编写一个类似 workerman 的网络框架,可以做统一中断信号事件处理
中断处理程序只负责接受中断请求,通过管道写端写入数据,主进程通过监听文件描述符上的事件再处理。不会让中断处理程序等待过长的时间。
当然通过命名管道也可以实现跨语言进程间的通信。

