基于 Swoole Shared Memory 开发的 imi 框架跨进程变量共享组件

网友投稿 975 2022-10-17

基于 Swoole Shared Memory 开发的 imi 框架跨进程变量共享组件

基于 Swoole Shared Memory 开发的 imi 框架跨进程变量共享组件

imi-shared-memory

介绍

基于 Swoole Shared Memory 开发的 imi 框架跨进程变量共享组件。

Composer

本项目可以使用composer安装,遵循psr-4自动加载规则,在你的 composer.json 中加入下面的内容:

{ "require": { "imiphp/imi-shared-memory": "~1.0" }}

然后执行 composer update 安装。

使用

在项目 config/config.php 中配置:

[ 'components' => [ // 引入本组件 'SharedMemory' => 'Imi\SharedMemory', ], 'pools' => [ // 客户端连接池 'sharedMemory' => [ 'async' => [ 'pool' => [ 'class' => \Imi\SharedMemory\Pool\ClientPool::class, 'config' => [ 'maxResources' => 100, 'minResources' => 0, ], ], 'resource' => [ // 以下为可选配置 // 存储器类型,注意和下面的类名不同 // 'storeTypes' => [ // \Yurun\Swoole\SharedMemory\Client\Store\KV::class, // \Yurun\Swoole\SharedMemory\Client\Store\Stack::class, // \Yurun\Swoole\SharedMemory\Client\Store\Queue::class, // \Yurun\Swoole\SharedMemory\Client\Store\PriorityQueue::class, // 'name' => 'XXXClass', // ], // unix socket 文件名,默认会自动放 runtime 目录中 // 'socketFile' => '', ], ], ] ], // 以下为可选配置 // 'swooleSharedMemory' => [ // unix socket 文件名,默认会自动放 runtime 目录中 // 'socketFile' => '', // 存储器类型,注意和上面的类名不同 // 'storeTypes' => [ // \Yurun\Swoole\SharedMemory\Store\KV::class, // \Yurun\Swoole\SharedMemory\Store\Stack::class, // \Yurun\Swoole\SharedMemory\Store\Queue::class, // \Yurun\Swoole\SharedMemory\Store\PriorityQueue::class, // 'name' => 'XXXClass', // ], // 默认连接池名 // 'defaultPool' => 'sharedMemory' // ],]

在代码中操作:

// 方法一SharedMemory::use('KV', function(\Yurun\Swoole\SharedMemory\Client\Store\KV $kv){ $kv->set('a', 1);});// 方法二$kv = SharedMemory::getInstance()->getObject('KV');$kv->set('a', 1);

免费技术支持

运行环境

PHP >= 7.1ComposerSwoole >= 4.1.0

版权信息

imi-shared-memory 遵循 MIT 开源协议发布,并提供免费使用。

捐赠

开源不求盈利,多少都是心意,生活不易,随缘随缘……

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Redis教程2-安装
下一篇:Netty分布式NioSocketChannel注册到selector方法解析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~