zoukankan      html  css  js  c++  java
  • Redis的学习笔记

    Redis:REmote DIctionary Server(远程字典服务器)

    Redis有三个特点:

      ①Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。

      ②Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。

      ③Redis支持数据的备份,即master-slave的数据备份。

    Redis的作用:

      ①内存存储和持久化:Redis支持异步将内存中的数据写到硬盘上,同时不影响继续服务。

      ②取最新N个数据的操作,如:可以将最新的10条评论的ID放在Redis的List集合里面。

      ③模拟类似一HttpSession这中需要设定过期时间的功能。

      ④发布、订阅消息系统。

      ⑤定时器、计数器。

    Redis的命令(cmd):

      Redis 字符串(String):

        Redis 字符串数据类型的相关命令用于管理 redis 字符串值.

        redis 127.0.0.1:6379> SET runoobkey redis

        ok

        redis 127.0.0.1:6379> GET runoobkey

        "redis"

        redis 127.0.0.1:6379> DEL runoobkey

        (interger) 1

      Redis 哈希(Hash):

        Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。

        Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。

        redis 127.0.0.1:6379> HSET myhash field1 "foo"
        (integer) 1
        redis 127.0.0.1:6379> HDEL myhash field1
        (integer) 1
        redis 127.0.0.1:6379> HDEL myhash field2
        (integer) 0

       Redis 列表(List):

        Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)

        一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。

        redis 127.0.0.1:6379> LPUSH runoobkey redis
        (integer) 1
        redis 127.0.0.1:6379> LPUSH runoobkey mongodb
        (integer) 2
        redis 127.0.0.1:6379> LPUSH runoobkey mysql
        (integer) 3
        redis 127.0.0.1:6379> LRANGE runoobkey 0 10

        1) "mysql"
        2) "mongodb"
        3) "redis"

      Redis 集合(Set):  

        Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。

        Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。

        集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

        redis 127.0.0.1:6379> SADD runoobkey redis
        (integer) 1
        redis 127.0.0.1:6379> SADD runoobkey mongodb
        (integer) 1
        redis 127.0.0.1:6379> SADD runoobkey mysql
        (integer) 1
        redis 127.0.0.1:6379> SADD runoobkey mysql
        (integer) 0
        redis 127.0.0.1:6379> SMEMBERS runoobkey

        1) "mysql"
        2) "mongodb"
        3) "redis"

      Redis 有序集合(sorted set):

        Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。

        不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

        有序集合的成员是唯一的,但分数(score)却可以重复。

        集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿                           个成员)。

        redis 127.0.0.1:6379> ZADD runoobkey 1 redis
        (integer) 1
        redis 127.0.0.1:6379> ZADD runoobkey 2 mongodb
        (integer) 1
        redis 127.0.0.1:6379> ZADD runoobkey 3 mysql
        (integer) 1
        redis 127.0.0.1:6379> ZADD runoobkey 3 mysql
        (integer) 0
        redis 127.0.0.1:6379> ZADD runoobkey 4 mysql
        (integer) 0
        redis 127.0.0.1:6379> ZRANGE runoobkey 0 10 WITHSCORES

        1) "redis"
        2) "1"
        3) "mongodb"
        4) "2"
        5) "mysql"
        6) "4"

        

        

     

  • 相关阅读:
    Eclipse安装TestNG插件
    总结Selenium WebDriver中一些鼠标和键盘事件的使用
    【资料收集】AutomationGuru
    centos7.4 yum安装包出现网络不可达跟Recv failure: Connection reset by peer" 这个问题
    ubuntu配置ntp
    OpenStack-ansible ubuntu16.04安装&& centos7 安装 && openSUSE 安装OpenStack-ansible
    HSRP&&STP&&ACL
    vlan通讯&&动态路由
    cisco交换机基本配置
    cisco教程 怎么改console密码 主机名 各种模式的切换等
  • 原文地址:https://www.cnblogs.com/yangkang0202/p/8949602.html
Copyright © 2011-2022 走看看