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 时间戳格式表示
monitorcallable $callbackredis监视器,实时打印出 Redis 服务器接收到的命令
isMonitorStop判断是否开启监视器
setMonitorStopbool $monitorStop设置停止监视器
role返回主从实例所属的角色
save同步保存数据到硬盘
shutdown异步保存数据到硬盘,并关闭服务器
slowLog$subCommand, …$argument管理 redis 的慢日志
SYNC用于复制功能(replication)的内部命令

基本使用

  1. <?php
  2. go(function () {
  3. $redisConfig = new \EasySwoole\Redis\Config\RedisConfig();
  4. $redisConfig->setAuth('easyswoole');
  5. $redis = new \EasySwoole\Redis\Redis($redisConfig);
  6. $data = $redis->bgRewriteAof();
  7. var_dump($data);
  8. \Swoole\Coroutine::sleep(1);
  9. $data = $redis->bgSave();
  10. var_dump($data);
  11. $data = $redis->clientList();
  12. var_dump($data);
  13. $data = $redis->clientSetName('test');
  14. var_dump($data);
  15. $data = $redis->clientGetName();
  16. var_dump($data);
  17. $data = $redis->clientPause(1);
  18. var_dump($data);
  19. $data = $redis->command();
  20. var_dump($data);
  21. $data = $redis->commandCount();
  22. var_dump($data);
  23. $data = $redis->commandGetKeys('MSET', 'a', 'b', 'c', 'd');
  24. var_dump($data);
  25. $data = $redis->time();
  26. var_dump($data);
  27. $data = $redis->commandInfo('get', 'set');
  28. var_dump($data);
  29. $data = $redis->configGet('*max-*-entries*');
  30. var_dump($data);
  31. $data = $redis->configSet('appendonly', 'yes');
  32. var_dump($data);
  33. $data = $redis->configRewrite();
  34. var_dump($data);
  35. $data = $redis->configResetStat();
  36. var_dump($data);
  37. $data = $redis->dBSize();
  38. var_dump($data);
  39. $redis->set('a', 1);
  40. $data = $redis->debugObject('a');
  41. var_dump($data);
  42. $data = $redis->flushAll();
  43. var_dump($data);
  44. $data = $redis->flushDb();
  45. var_dump($data);
  46. $data = $redis->info();
  47. var_dump($data);
  48. $data = $redis->lastSave();
  49. var_dump($data);
  50. go(function () {
  51. $redisConfig = new \EasySwoole\Redis\Config\RedisConfig();
  52. $redisConfig->setAuth('easyswoole');
  53. $redis = new \EasySwoole\Redis\Redis($redisConfig);
  54. $redis->monitor(function ( \EasySwoole\Redis\Redis $redis, $data) {
  55. $this->assertIsString($data);
  56. $redis->set('a', 1);
  57. $redis->setMonitorStop(true);
  58. });
  59. });
  60. go(function () {
  61. $redisConfig = new \EasySwoole\Redis\Config\RedisConfig();
  62. $redisConfig->setAuth('easyswoole');
  63. $redis = new \EasySwoole\Redis\Redis($redisConfig);
  64. \Swoole\Coroutine::sleep(1);
  65. $redis->set('a', 1);
  66. });
  67. $data = $redis->save();
  68. var_dump($data);
  69. $data = $redis->clientKill($data[0]['addr']);
  70. var_dump($data);
  71. $data = $redis->slowLog('get', 'a');
  72. var_dump($data, $redis->getErrorMsg());
  73. var_dump($data);
  74. });