zoukankan      html  css  js  c++  java
  • Redis-03基础知识-命令

    1.单进程

      Redis采用单进程模型来处理客户端的请求。对读写等时间的响应是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率。

        Epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃情况下的系统CPU利用率。

    2.Redis索引

      Redis索引都是从0开始

    3.数据库

      默认16个数据库,类似数组下表从0开始,初始默认使用0号库。Select命令可以切换数据库。

    4.Redis几种数据格式

       1.String

      2.List列表

         它是一个字符链表,left,right都可以插入添加。

        一个列表最多可以包含 232 - 1 个元素
        如果键不存在,创建新的链表。
        如果键已经存在,新增内容。
        如果值全移除,对应的键也就消失了。
        链表的操作无论是头和尾效率都极高,但假如是对中间元素进行操作,效率就很惨淡了

    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"

      3.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"

      4.Hash哈希

        V是一个类似于map的东西

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

    127.0.0.1:6379>  HMSET runoobkey name "redis tutorial" description "redis basic commands for caching" likes 20 visitors 23000
    OK
    127.0.0.1:6379>  HGETALL runoobkey
    1) "name"
    2) "redis tutorial"
    3) "description"
    4) "redis basic commands for caching"
    5) "likes"
    6) "20"
    7) "visitors"
    8) "23000"

      5.Zset有序集合

        和set的区别:在set基础上加上一个score值

        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"
    

    4.Redis命令

      http://redisdoc.com/

          列举几个命令:

        dbsize:查看当前数据库的key的数量

        flushdb:清空当前库(慎重)

        flushall:通杀全部库(慎重慎重慎重慎重慎重)

      

  • 相关阅读:
    JUnit-4.11使用报java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing错误
    生成验证码图片
    九九乘法表
    Java注解之Retention、Documented、Target、Inherited介绍
    【ztree】zTree节点增删改&ztree对树节点进行检索
    一次性搞清楚equals和hashCode
    HashMap实现原理分析
    DDL、DML和DCL的区别与理解
    MySQL的@与@@区别
    springboot整合mybatis(SSM开发环境搭建)&Springboot项目热部署
  • 原文地址:https://www.cnblogs.com/jthr/p/14475471.html
Copyright © 2011-2022 走看看