easyswoole3.5 redis使用詳細解析
更新時間:2024年05月25日 11:40:36 作者:肥茹
這篇文章主要介紹了easyswoole3.5 redis使用的相關知識,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
安裝redis指定版本
composer require easyswoole/redis:^1.3
redis配置,dev.php
<?php use EasySwoole\Log\LoggerInterface; return [ 'SERVER_NAME' => "EasySwoole", 'MAIN_SERVER' => [ 'LISTEN_ADDRESS' => '0.0.0.0', 'PORT' => 9503, 'SERVER_TYPE' => EASYSWOOLE_WEB_SERVER, //可選為 EASYSWOOLE_SERVER EASYSWOOLE_WEB_SERVER EASYSWOOLE_WEB_SOCKET_SERVER 'SOCK_TYPE' => SWOOLE_TCP, 'RUN_MODEL' => SWOOLE_PROCESS, 'SETTING' => [ 'worker_num' => 8, 'reload_async' => true, 'max_wait_time' => 3 ], 'TASK' => [ 'workerNum' => 4, 'maxRunningNum' => 128, 'timeout' => 15 ] ], "LOG" => [ 'dir' => null, 'level' => LoggerInterface::LOG_LEVEL_DEBUG, 'handler' => null, 'logConsole' => true, 'displayConsole' => true, 'ignoreCategory' => [] ], 'TEMP_DIR' => null, // 添加 Redis 及對應的連接池配置 /*################ REDIS CONFIG ##################*/ 'REDIS' => [ 'host' => '127.0.0.1', // Redis 地址 'port' => '6379', // Redis 端口 'auth' => '', // Redis 密碼 'timeout' => 3.0, // Redis 操作超時時間 'reconnectTimes' => 3, // Redis 自動重連次數(shù) 'db' => 0, // Redis 庫 ], ];
EasySwooleEvent.php,加入預加載
public static function initialize() { date_default_timezone_set('Asia/Shanghai'); $rdConfig = new RedisConfig(Config::getInstance()->getConf('REDIS')); RedisPool::getInstance()->register($rdConfig); }
控制器使用
public function getOne() { $param = ContextManager::getInstance()->get('param'); $redis = RedisPool::defer(); //redis 操作 $redisData = $redis->get($this->key.$param['id']); if ($redisData) { $this->writeJson(Status::CODE_OK, json_decode($redisData, true), "獲取數(shù)據(jù)成功."); return false; } $model = new StudentModel(); try { $info = $model->where('id', $param['id'])->get(); } catch (Exception|\EasySwoole\ORM\Exception\Exception|\Throwable $e) { $this->writeJson(Status::CODE_BAD_REQUEST, [], $e->getMessage()); return false; } if (!$info) { $this->writeJson(400, [], '該數(shù)據(jù)不存在'); return false; } $redis->set($this->key.$param['id'], json_encode($info, JSON_UNESCAPED_UNICODE), $this->time); $this->writeJson(Status::CODE_OK, $info, "獲取數(shù)據(jù)成功."); }
到此這篇關于easyswoole3.5 redis使用的文章就介紹到這了,更多相關easyswoole3.5 redis使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Redis 安裝 redistimeseries.so(時間序列數(shù)據(jù)類型)的配置步驟
這篇文章主要介紹了Redis 安裝 redistimeseries.so(時間序列數(shù)據(jù)類型)詳細教程,配置步驟需要先下載redistimeseries.so 文件,文中介紹了啟動失敗問題排查,需要的朋友可以參考下2024-01-01