workerman 多个进程共享数据(能不能直接在内存共享?或者多线程)

dream

我有两个进程,想操作同一个资源,不想借助文件或者数据库存储(效率低),上网上搜了一下可以内存共享,我想问一下,workerman有什么解决方法吗?,多线程版本可以吗?

13258 1 1
1个回答

walkor

资源类型(mysql连接、socket连接等)不能进程间共享的。

进程间通讯可以试下workerman提供的Channel组件,参考手册
http://doc3.workerman.net/component/channel-examples.html

如果需要多进程间共享数据,可以使用php提供的共享内存接口例如shm__系列或者shmop__系列,缺点是无法做到分布式多机部署。
简单的方法还是使用redis\mysql等存储,redis也是内存存储,速度很快,redis也能支持集群部署。

  • 暂无评论
年代过于久远,无法发表回答
🔝