我有两个进程,想操作同一个资源,不想借助文件或者数据库存储(效率低),上网上搜了一下可以内存共享,我想问一下,workerman有什么解决方法吗?,多线程版本可以吗?
资源类型(mysql连接、socket连接等)不能进程间共享的。
进程间通讯可以试下workerman提供的Channel组件,参考手册 http://doc3.workerman.net/component/channel-examples.html
如果需要多进程间共享数据,可以使用php提供的共享内存接口例如shm__系列或者shmop__系列,缺点是无法做到分布式多机部署。 简单的方法还是使用redis\mysql等存储,redis也是内存存储,速度很快,redis也能支持集群部署。
资源类型(mysql连接、socket连接等)不能进程间共享的。
进程间通讯可以试下workerman提供的Channel组件,参考手册
http://doc3.workerman.net/component/channel-examples.html
如果需要多进程间共享数据,可以使用php提供的共享内存接口例如shm__系列或者shmop__系列,缺点是无法做到分布式多机部署。
简单的方法还是使用redis\mysql等存储,redis也是内存存储,速度很快,redis也能支持集群部署。