Redis 服務器
Redis 服務器命令主要是用于管理 redis 服務。
操作方法
方法列表 | 方法名稱 | 參數 | 說明 | 備注 |
---|---|---|---|---|
bgRewriteAof | 手動觸發重寫操作。 | |||
bgSave | 在后臺異步保存當前數據庫的數據到磁盤 | |||
clientKill | $data | 關閉客戶端連接 | ||
clientList | 獲取連接到服務器的客戶端連接列表 | |||
clientGetName | 獲取連接的名稱 | |||
clientPause | $timeout | 在指定時間內終止運行來自客戶端的命令 | ||
clientSetName | $connectionName | 設置當前連接的名稱 | ||
command | 獲取 Redis 命令詳情數組 | |||
commandCount | 獲取 Redis 命令總數 | |||
commandGetKeys | ...$data | 獲取給定命令的所有鍵 | ||
time | 返回當前redis服務器時間 | |||
commandInfo | $commandName, ...$commandNames | 獲取指定 Redis 命令描述的數組 | ||
configGet | $parameter | 獲取指定配置參數的值 | ||
configRewrite | 對啟動 Redis 服務器時所指定的 redis.conf 配置文件進行改寫 | |||
configSet | $parameter, $value | 修改 redis 配置參數,無需重啟 | ||
configResetStat | 重置 INFO 命令中的某些統計數據 | |||
dBSize | 返回當前數據庫的 key 的數量 | |||
debugObject | $key | 獲取 key 的調試信息 | ||
debugSegfault | 讓 Redis 服務崩潰 | |||
flushAll | 刪除所有數據庫的所有key | |||
flushDb | 刪除當前數據庫的所有key | |||
info | $section = null | 獲取 Redis 服務器的各種信息和統計數值 | ||
lastSave | 返回最近一次 Redis 成功將數據保存到磁盤上的時間,以 UNIX 時間戳格式表示 | |||
monitor | callable $callback | redis監視器,實時打印出 Redis 服務器接收到的命令 | ||
isMonitorStop | 判斷是否開啟監視器 | |||
setMonitorStop | bool $monitorStop | 設置停止監視器 | ||
role | 返回主從實例所屬的角色 | |||
save | 同步保存數據到硬盤 | |||
shutdown | 異步保存數據到硬盤,并關閉服務器 | |||
slowLog | $subCommand, ...$argument | 管理 redis 的慢日志 | ||
SYNC | 用于復制功能(replication)的內部命令 |
基本使用
<?php
go(function () {
$redisConfig = new \EasySwoole\Redis\Config\RedisConfig();
$redisConfig->setAuth('easyswoole');
$redis = new \EasySwoole\Redis\Redis($redisConfig);
$data = $redis->bgRewriteAof();
var_dump($data);
\Swoole\Coroutine::sleep(1);
$data = $redis->bgSave();
var_dump($data);
$data = $redis->clientList();
var_dump($data);
$data = $redis->clientSetName('test');
var_dump($data);
$data = $redis->clientGetName();
var_dump($data);
$data = $redis->clientPause(1);
var_dump($data);
$data = $redis->command();
var_dump($data);
$data = $redis->commandCount();
var_dump($data);
$data = $redis->commandGetKeys('MSET', 'a', 'b', 'c', 'd');
var_dump($data);
$data = $redis->time();
var_dump($data);
$data = $redis->commandInfo('get', 'set');
var_dump($data);
$data = $redis->configGet('*max-*-entries*');
var_dump($data);
$data = $redis->configSet('appendonly', 'yes');
var_dump($data);
$data = $redis->configRewrite();
var_dump($data);
$data = $redis->configResetStat();
var_dump($data);
$data = $redis->dBSize();
var_dump($data);
$redis->set('a', 1);
$data = $redis->debugObject('a');
var_dump($data);
$data = $redis->flushAll();
var_dump($data);
$data = $redis->flushDb();
var_dump($data);
$data = $redis->info();
var_dump($data);
$data = $redis->lastSave();
var_dump($data);
go(function () {
$redisConfig = new \EasySwoole\Redis\Config\RedisConfig();
$redisConfig->setAuth('easyswoole');
$redis = new \EasySwoole\Redis\Redis($redisConfig);
$redis->monitor(function ( \EasySwoole\Redis\Redis $redis, $data) {
$this->assertIsString($data);
$redis->set('a', 1);
$redis->setMonitorStop(true);
});
});
go(function () {
$redisConfig = new \EasySwoole\Redis\Config\RedisConfig();
$redisConfig->setAuth('easyswoole');
$redis = new \EasySwoole\Redis\Redis($redisConfig);
\Swoole\Coroutine::sleep(1);
$redis->set('a', 1);
});
$data = $redis->save();
var_dump($data);
$data = $redis->clientKill($data[0]['addr']);
var_dump($data);
$data = $redis->slowLog('get', 'a');
var_dump($data, $redis->getErrorMsg());
var_dump($data);
});