Введение
imi — это компонент для межпроцессного обмена данными, основанный на Swoole Shared Memory.
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, по умолчанию будет автоматически помещено в каталог runtime
// 'socketFile' => '',
],
],
]
],
// Следующее является необязательной конфигурацией
// 'swooleSharedMemory' => [
// Имя файла сокета Unix, по умолчанию будет автоматически помещено в каталог 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'
// ],
]
Используйте код:
// Метод 1
SharedMemory::use('KV', function(\Yurun\Swoole\SharedMemory\Client\Store\KV $kv){
$kv->set('a', 1);
});
// Метод 2
$kv = SharedMemory::getInstance()->getObject('KV');
$kv->set('a', 1);
Бесплатная техническая поддержка
QQ группа: 17916227 , если у вас есть вопросы, вам помогут ответить и решить их.
Среда выполнения
Информация об авторских правах
imi-shared-memory распространяется под лицензией MIT и предоставляется бесплатно.
Пожертвования
Открытое программное обеспечение не предназначено для получения прибыли, любая сумма приветствуется, жизнь трудна, так что…
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )