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);
});