1. construct函数: 用来创建一个redis客户端。

     redis = new Redis();
  2. connect函数:连接到一个redis实例。

    参数如下:

      host:字符串类型 可以使一个HOST IP或者是一个UNIX DOMAIN SOCKET的路径.

      port:整数型,Redis的运行端口.

      timeout:浮点型,连接的市场,单位是秒,默认为0即连接没有时间限制

     $redis->connect('127.0.0.1', 6379);
    $redis->connect('127.0.0.1'); // port 6379 by default
    $redis->connect('127.0.0.1', 6379, 2.5); // 2.5 sec timeout.
    $redis->connect('/tmp/redis.sock'); // unix domain socket.
  3. pconnect函数:pconnect用于连接一个Redis的实例或者复用一个已经存在的实例。这个连接将不会被主动关闭,比如使用close(),或者PHP执行结束这个连接都不会被主动关闭。当有大量的connect请求在redis服务器端时,使用持久化的连接对象。一个持久化的连接实例,可以使用HOST+PORT+TIMEOUT或者HOST+persistent_id或者SOCKET+TIMEOUT的方式创建。pconnect函数在线程版本中不能被使用。

     $redis->pconnect('127.0.0.1', 6379);
    $redis->pconnect('127.0.0.1'); // port 6379 by default - same connection like before.
    $redis->pconnect('127.0.0.1', 6379, 2.5); // 2.5 sec timeout and would be another connection than the two before.
    $redis->pconnect('127.0.0.1', 6379, 2.5, 'x'); // x is sent as persistent_id and would be another connection the the three before.
    $redis->pconnect('/tmp/redis.sock'); // unix domain socket - would be another connection than the four before.
  4. close函数:关闭Redis的连接实例,但是不能关闭用pconnect连接的实例

     $redis->close();
  5. setOption函数:设置客户端选项

     $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_NONE);   // don't serialize data
    $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_PHP); // use built-in serialize/unserialize
    $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_IGBINARY); // use igBinary serialize/unserialize $redis->setOption(Redis::OPT_PREFIX, 'myAppName:'); // use custom prefix on all keys
  6. getOption函数:得到客户端选项

     $redis->getOption(Redis::OPT_SERIALIZER);   // return Redis::SERIALIZER_NONE, Redis::SERIALIZER_PHP, or Redis::SERIALIZER_IGBINARY.
  7. ping:检查当前连接实例的状态,如果失败,Throws一个RedisException对象报出连接错误。

  8. echo:发送一个字符串到Redis,返回一个相同的字符串。

  9. randomKey:返回一个随机的存在于REDIS中的KEY。

     $key = $redis->randomKey();
    $surprise = $redis->get($key); // who knows what's in there.
  10. select:选择数据库,参数为整数值,为数据库索引,数据库的ID。

  11. auth:使用PASSWORD验证链接。警告:PASSWD以明码的形式在网络中传输。参数为string类型的password。

    $redis->auth('foobared');
  12. bgrewriteaof:使用aof来进行数据库持久化。

    $redis->bgrewriteaof();
  13. slaveof:选择从服务器,参数为从服务器ip地址和端口号,参数为空停止从服务器。

    $redis->slaveof('10.0.1.7', 6379);
    /* ... */
    $redis->slaveof();
  14. object:声明一个对象,并指向KEY。

     参数说明:

    检索信息(字符串)和密钥(字符串)。信息可以是以下之一:

    “编码”

    “引用计数”

    “空闲时间”

    $redis->object("encoding", "l"); // → ziplist
    $redis->object("refcount", "l"); // → 1
    $redis->object("idletime", "l"); // → 400 (in seconds, with a precision of 10 seconds).
  15. save:同步执行写入到磁盘。

    $redis->save();
  16. bgsave:异步保存到磁盘。

    $redis->bgSave();
  17. lastSave:返回最后一次数据磁盘持久化的时间戳。

    $redis->lastSave();
  18. flushDB:强制刷新当前DB。会清空当前db。

    $redis->flushDB();
  19. flushAll:强制刷新所有的DB。

    $redis->flushAll();
  20. sort:筛选

    参数说明:

    Key: key Options: array(key => value, ...) - optional, with the following keys and values:

    'by' => 'some_pattern_*',
    'limit' => array(0, 1),
    'get' => 'some_other_pattern_*' or an array of patterns,
    'sort' => 'asc' or 'desc',
    'alpha' => TRUE,
    'store' => 'external-key'

实例:

	$redis->delete('s');
$redis->sadd('s', 5);
$redis->sadd('s', 4);
$redis->sadd('s', 2);
$redis->sadd('s', 1);
$redis->sadd('s', 3); var_dump($redis->sort('s')); // 1,2,3,4,5
var_dump($redis->sort('s', array('sort' => 'desc'))); // 5,4,3,2,1
var_dump($redis->sort('s', array('sort' => 'desc', 'store' => 'out'))); // (int)5
  1. info:返回redis的相关系统信息,可以选择参数,按照选择的参数返回相应的信息,也可以不写参数,返回所有的信息。

    参数:

    redis_version

    arch_bits

    uptime_in_seconds

    uptime_in_days

    connected_clients

    connected_slaves

    used_memory

    changes_since_last_save

    bgsave_in_progress

    las\t_save_time

    total_connections_received

    total_commands_processed

    role

    $redis->info(); /* standard redis INFO command */
    $redis->info("COMMANDSTATS"); /* Information on the commands that have been run (>=2.6 only)
    $redis->info("CPU"); /* just CPU information from Redis INFO */
  2. resetStat:使用info()重置静态的日志。

    $redis->resetStat();
  3. persist: 删除一个KEY的生命周期设置。

    $redis->persist('key');
  4. config:取得或者设置REIDS系统配置KEYS。

    参数:

    操作(字符串)获取或设置

    设置关键字符串,glob模式得到。看到http://redis.io/commands/config-get为例。

    值可选字符串(仅用于set)

    $redis->config("GET", "*max-*-entries*");
    $redis->config("SET", "dir", "/var/run/redis/dumps/");
  5. eval:在服务器端执行LUA脚本

  6. script:执行Redis脚本命令来执行各种操作。

  7. getLastError:取得最后的错误消息。

  8. _prefix:用于给VALUE加入前缀

  9. _unserialize:反序列化函数,用于序列化的SET类型数据。如果参数不是序列化的SET,那么会直接返回。如果是一个序列化的SET,但不是PHP-REDIS序列化的格式,函数将抛出一个异常。

    $redis->setOpt(Redis::OPT_SERIALIZER, Redis::SERIALIZER_PHP);
    $redis->_unserialize('a:3:{i:0;i:1;i:1;i:2;i:2;i:3;}'); // Will return Array(1,2,3)
  10. dump: 把一个KEY从REIDS中销毁(但是这个销毁不是物理意义上销毁),这个被销毁的VALUE,可以使用RESTORE函数恢复出来。使用DUMP销毁的VALUE,函数将返回这个数据在REIDS中的二进制内存地址。

  11. $redis->set('foo', 'bar');
    $val = $redis->dump('foo'); // $val will be the Redis encoded key value
  12. restore:恢复DUMP函数销毁的VALUE到一个新的KEY上。

    $redis->set('foo', 'bar');
    $val = $redis->dump('foo');
    $redis->restore('bar', 0, $val); // The key 'bar', will now be equal to the key 'foo'
  13. migrate:迁移一个KEY岛不同的REIDS实例。

    $redis->migrate('backup', 6379, 'foo', 0, 3600);
  14. time:返回当前REDIS服务器的生存时间。

    $redis->time();

redis系统和通用函数的更多相关文章

  1. 3分钟学会如何调度运营海量Redis系统

    本文由云+社区发表 作者:冯伟源 作者:冯伟源,高级工程师,腾讯云Redis系统运维负责人.6年DBA经验,一直从事SQL优化.实例调优.数据库架构.海量数据库集群运维.运营平台建设和管理等工作.为 ...

  2. 如何运营亿级QPS的Redis系统

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 作者:冯伟源,高级工程师,腾讯云Redis系统运维负责人.6年DBA经验,一直从事SQL优化.实例调优.数据库架构.海量数据库集群运维.运营 ...

  3. Redis 系统学习目录

    Redis 系统学习目录 1.redis是什么2.redis的作者何许人也3.谁在使用redis4.学会安装redis5.学会启动redis6.使用redis客户端7.redis数据结构 – 简介8. ...

  4. Redis系统学习 五、管理

    在最后一章里,我们将集中谈论Redis运行中的一些管理方面内容.这是一个不完整的Redis管理指南,我们将会回答一些基本的问题,初接触Redis的新用户可能会很感兴趣. 配置(Configuratio ...

  5. Redis系统学习 二、数据结构

    一.字符串     1.在Redis里,字符串是最基本的数据结构.当你在思索着关键字-值对时,你就是在死锁着字符串数据结构.不要被名字给搞混了. 常见实例: set users:leto " ...

  6. 一次简单的springboot+dubbo+flume+kafka+storm+redis系统

    最近无事学习一下,用springboot+dubbo+flume+kafka+storm+redis做了一个简单的scenic系统 scenicweb:展现层,springboot+dubbo sce ...

  7. Redis系统学习 四、超越数据结构

    5种数据结构组成了Redis的基础,其他没有关联特定数据结构的命令也有很多.我们已经看过一些这样的命令:info,select,flushdb,multi,exec,discard,watch,和ke ...

  8. Redis系统学习 三、使用数据结构

    前言:上一章,简单介绍了5种数据结构,并给出了一些用例.现在是时候来看看一些高级的,但依然很常见的主题和设计模式 一.大O表示法(Big O Notation ) 常用时间复杂度O(1)被认为是最快速 ...

  9. Redis系统学习 一、基础知识

    1.数据库 select 1  select 0 2.命令.关键字和值 redis不仅仅是一种简单的关键字-值型存储,从其核心概念来看,Redsi的5种数据结构中的每一个都至少有一个关键字和一个值.在 ...

随机推荐

  1. SqlCmd -Windows Cluster Model

    前提条件 1存储lun 划分完毕并且挂载到其中一台机器上 2 需要加入群集的节点机器加入域完毕,并设置好心跳线 .加域部分可以参考 之前 Sqler Cmd 加域部分. 1检查Feature 更新 S ...

  2. NG2-我们创建一个可复用的服务来调用英雄的数据

    <英雄指南>继续前行.接下来,我们准备添加更多的组件. 将来会有更多的组件访问英雄数据,我们不想一遍一遍地复制粘贴同样的代码. 解决方案是,创建一个单一的.可复用的数据服务,然后学着把它注 ...

  3. Working Set

    类似于Visual Studio中的Solution 如果Eclipse中的project过多,而且不是同一个真实的项目中的,可以按Working Set对project进行组织,只是一个逻辑组织 操 ...

  4. django 视图 使用orm values_list()方法获取 指定的 多个字段的数据

    from .models import UserInfodata_set = UserInfo.objects.all().values_list("user_name", &qu ...

  5. flask 安装

    flask官网 : http://docs.jinkan.org/docs/flask/installation.html (基本上就是按照官网思路一点一点来的) 1,安装easy_install: ...

  6. Cocoa对象——根类

    [转载自:http://mobile.51cto.com/iphone-274229.htm] Cocoa对象 根类是本文要介绍的内容,仅凭Objective-C语言和运行环境并不足以构造哪怕是最简单 ...

  7. 分布式系统的Raft算法学习笔记

    摘取自:  http://mp.weixin.qq.com/s?__biz=MzIyMTQ1NDE0MQ==&mid=2247483979&idx=1&sn=12864382e ...

  8. leetcode-55-跳跃游戏

    题目描述: 给定一个非负整数数组,你最初位于数组的第一个位置. 数组中的每个元素代表你在该位置可以跳跃的最大长度. 判断你是否能够到达最后一个位置. 示例 1: 输入: [2,3,1,1,4] 输出: ...

  9. FlowPortal-BPM——数据库交互:创建新接口(类库)—将数据提交给其他程序使用

    使用到的是“流程设计”→“自定义插件” 一.创建新类库 (1)新建类库→引用文件 (2)新建ado.net数据访问类(要操作的数据库) (3)右键类库名称→属性→生成→输出→路径:安装目录下UserD ...

  10. Kettle 系列随笔

    1.Kettle导入数据到Hive 出现多余的几行全部是null值的情况 2.Kettle根据表输入的SQL脚本返回创建表的SQL脚本 3.Kettle 行列互换之——行转列(多列数据合并成一列变为多 ...