Redis 服務(wù)器
Redis 服務(wù)器命令主要是用于管理 redis 服務(wù)。
操作方法
方法列表 | 方法名稱 | 參數(shù) | 說明 | 備注 |
---|---|---|---|---|
bgRewriteAof | 手動(dòng)觸發(fā)重寫操作。 | |||
bgSave | 在后臺(tái)異步保存當(dāng)前數(shù)據(jù)庫的數(shù)據(jù)到磁盤 | |||
clientKill | $data | 關(guān)閉客戶端連接 | ||
clientList | 獲取連接到服務(wù)器的客戶端連接列表 | |||
clientGetName | 獲取連接的名稱 | |||
clientPause | $timeout | 在指定時(shí)間內(nèi)終止運(yùn)行來自客戶端的命令 | ||
clientSetName | $connectionName | 設(shè)置當(dāng)前連接的名稱 | ||
command | 獲取 Redis 命令詳情數(shù)組 | |||
commandCount | 獲取 Redis 命令總數(shù) | |||
commandGetKeys | ...$data | 獲取給定命令的所有鍵 | ||
time | 返回當(dāng)前redis服務(wù)器時(shí)間 | |||
commandInfo | $commandName, ...$commandNames | 獲取指定 Redis 命令描述的數(shù)組 | ||
configGet | $parameter | 獲取指定配置參數(shù)的值 | ||
configRewrite | 對(duì)啟動(dòng) Redis 服務(wù)器時(shí)所指定的 redis.conf 配置文件進(jìn)行改寫 | |||
configSet | $parameter, $value | 修改 redis 配置參數(shù),無需重啟 | ||
configResetStat | 重置 INFO 命令中的某些統(tǒng)計(jì)數(shù)據(jù) | |||
dBSize | 返回當(dāng)前數(shù)據(jù)庫的 key 的數(shù)量 | |||
debugObject | $key | 獲取 key 的調(diào)試信息 | ||
debugSegfault | 讓 Redis 服務(wù)崩潰 | |||
flushAll | 刪除所有數(shù)據(jù)庫的所有key | |||
flushDb | 刪除當(dāng)前數(shù)據(jù)庫的所有key | |||
info | $section = null | 獲取 Redis 服務(wù)器的各種信息和統(tǒng)計(jì)數(shù)值 | ||
lastSave | 返回最近一次 Redis 成功將數(shù)據(jù)保存到磁盤上的時(shí)間,以 UNIX 時(shí)間戳格式表示 | |||
monitor | callable $callback | redis監(jiān)視器,實(shí)時(shí)打印出 Redis 服務(wù)器接收到的命令 | ||
isMonitorStop | 判斷是否開啟監(jiān)視器 | |||
setMonitorStop | bool $monitorStop | 設(shè)置停止監(jiān)視器 | ||
role | 返回主從實(shí)例所屬的角色 | |||
save | 同步保存數(shù)據(jù)到硬盤 | |||
shutdown | 異步保存數(shù)據(jù)到硬盤,并關(guān)閉服務(wù)器 | |||
slowLog | $subCommand, ...$argument | 管理 redis 的慢日志 | ||
SYNC | 用于復(fù)制功能(replication)的內(nèi)部命令 |
基本使用
<?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);
});