zoukankan      html  css  js  c++  java
  • 揭开redis神秘面纱

    一直听别人说NoSQL,以前一直不明白,这到底是什么东西,今天听过我们涛哥的讲解,略有小感,特此小记。

    NoSQL(NoSQL = Not Only SQL),意为反SQL运动,是一项全新的数据库革命性运动,它指的是非关系型的数据库。比较适用于对数据高并发读写,对海量数据的高效率存储和访问等等。由于学习的redis,因此下面的都是redis的相关知识。

    redis也是key-value存储,和memcache很相似,支持的存储类型有字符串,hash,list(链表),set(集合)等等。在此基础上还可以实现master-slave(主从)同步,由此可以实现读写分离。另外一直对论坛或微博的消息推送一直也很感兴趣,今天听闻redis也可以构建实时消息系统,只能感叹的五体投地了。最后我们的涛哥还说可以实现构建队列系统,类似于神奇的12306的抢票,感叹的说不出话来啊!真是神器啊!

    另外安装PHP扩展模块,连接redis,实现php和redis的连接。

    //php中实现Redis的数据库连接

    $redis = new Redis(); //创建redis对象
    $redis->connect("localhost");//连接redis数据库
    $redis->auth("123456"); //登录密码

    随便发了一篇,本人才疏学浅,引来好多朋友的怒火,抱歉,但哥真不想做标题党啊!下面补充下

    先说下redis下的常用命令吧

    Strings类型

    Set  

    设置key对应的值为string类型的value

    例:set name zhangsan

    Setnx

    设置key对应的值为string类型的value,如果key已经存在,返回0,保证不会覆盖已经存在的值

    get

    获取设置的key对应的值

    例:get name

    mset

    一次设置多个key的值

    mset key1 value1 key2 value2

    hashes类型(可以理解为php中的关联数组)

    hset hash名 键  值

    hset user:001 name zhangsan

    hget

     获取执行哈希名中的键对应值

    hget user:001 name

    hgetall

    获取指定hash名所有中的键值对

    list类型  (双向链表结构)

    lpush list1 "world"  //在list1头部压入一个字串

    lpush list1 "hello"  // 在list1头部压入一个字串

    lrange list1 0 -1  //获取list1中内容 (-1表示倒数第一个,可以理解为数组的截取)

    keys *返回所有键的key

     

  • 相关阅读:
    php 计算时间添加
    微信网页授权
    微信抢红包微信 PHP代码实现
    微信中禁止长按复制的代码
    【转】java内存分配和String类型的深度解析
    【转】java中创建对象的方法
    【转】深入理解Java的接口和抽象类
    【转】Java 字节流与字符流的区别
    【转】Java并发编程:Thread类的使用
    【转】深入理解java异常处理机制
  • 原文地址:https://www.cnblogs.com/kongxs/p/3341888.html
Copyright © 2011-2022 走看看