Redis 安装以及基础使用

【笔记】Redis 安装以及基础使用

  • Redis 是一个开源的基于内存的存储软件,实际应用中大家常用来做内存缓存

  • Redis 安装流程

    • Linux 和 Mac用户,可以在官网上 redis.io 或 github.com 直接下载源码,类编译安装。而 Windows 用户,可以选择从github.com/microsoftarchive 直接下载Redis 的安装包来安装
  • 启动配置

    • 在启动 redis-server 的时候,可以命令后面加配置文件的路径,来设置 redis 服务,如:

      • ./redis-server ~Download/redis/src/6381.conf

      • 常见的 redis 配置有:

        • port: redis 服务端口号
        • requirepass:授权密码。设置这个配置是,客户端在服务器取得连接后,需要执行 auth 命令
        • timeout:当客户端闲置多长时间后关闭连接
        • maxmemory:指定 Redis 最大内存闲置,Redis 在启动时会把数据加载到内存中,达到最大内存后,Redis 会先尝试清除已到期或即将到期的 Key,当此方法处理后,任然到达最大内存设置,将无法再进行写入操作,但任然进行读取操作
        • maxmemory-policy:清理内存策略。把Redis 当做一个缓存来用,可以考虑使用一次啊设置 maxmemory-poliy allkey-lru、maxmemory-policy有以下几个选项:
          • allkey-lru:
            • 无视 key 是否过期,当内存不够时,删除最近最少使用的key
          • volatile-lru:
            • 当内存不够用时,从设置了过期时间 key 中,删除最少使用的 key
          • volatile-tti;
            • 当内存不够用时,删除从设置最近将要过期的 key
      • 示例:

        • port 6379
          requirpass 123123
          maxmemeory 300
          maxmemory-poliy allkey-lru 
          
  • 基础使用

    • 常用 Redis 数据类型有:

      • 字符串(strings)
      • 散列(hashes)
      • 列表(lists)
      • 集合(sets)
      • 有序集合(sorted sets)
    • 先看字符串(strings) 的使用
      • 基础 set & get

        • set testkey1 value1 # 设置 testkey1
          • get testkey1 # 获取testkey1 的值
        • set testkey2 value2
        • get testkey2
          • value2
        • 获取多个key中的内容
          • mget testkey1 testkey2
            • value1
            • value2
      • 字符串类型中的 value,不仅仅用来存储字符串,还可以存储数字类型的数据

        • set intkey1 5 # 设置一个整型数据
          • incr intkey1 # intkey1中value值加 1
      • 散列(hashes)

        • 相对字符串类型,散列类型的数据相当于是二级的 map
        • 比如设置一个 hash 如下:
          • hset hashkey1 index1 hvalue1 #设置hashkey1[index1] = value1
            • hget hashkey1 index1 #获取 hashkey1[index1]的值
            • hashvalue
        • 散列中也可以存储数字类型的数据,不过对数字类型操作命令不如字符串类型丰富
          • hset hashkey1 index1 5 # 设置一个数字类型的值
          • hinrcby hashkey1 intdex1 2 # 给这个值加 2
            • hincrby hashkey1 intdex1 -3 # 给这个值键3
      • 列表(lists)

        • Redis 中的列表常被用作队列,比如要做一个先进先出的队列,就可以用 Redis 实现

          • lpush listkey1 12 # 从list 做端压入一个数据,此时队列为[12]

          • lpush listkey1 5 # 从list 左端压入一个数据,此时队列为[5, 12]

          • lpush listkey1 strvalue1 # 从list 左端压入一个数据,此时队列为[“strvalue1”,5, 12]

          • llen listkey1 # 获取队列数据个数

          • rpop listkey1 # 从 list 右端取出一个数据,此时队列为["strvalue1", 5]

原文地址:https://www.cnblogs.com/jcjc/p/12510008.html