zoukankan      html  css  js  c++  java
  • Redis(非关系型数据库,主要用于做缓存)

    1.1. 什么是NoSql

      NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,它泛指非关系型的数据库。随着互联网2003年之后web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的交友类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。

        

      关系型数据库:以关系(由行和列组成的二维表)模型为核心数据库. 有表的储存系统

     

    RDBMS (关系型数据库): mysql(现在都喜欢使用开源免费),oracle(有钱),SQLserver,postgrep db2 ,access...

    Redis 在后台做缓存

       redismemcachedkey-valueNosql,主要用来做缓存的.

     

    2.1. Redis是什么

     

    (1)Redis 是一个高性能的 开源的、C语言写的Nosql(非关系型数据库),数据保存可以存储在内存中或者磁盘中。

    (2)Redis 是以key-value形式存储,和传统的关系型数据库不一样。不一定遵循传统数据库的一些基本要求,比如说,不遵循sql标准,事务,表结构等等,redis严格上不是一种数据库,应该是一种数据结构化存储方法的集合--数组 list set map ...

    数据结构:数组,list,set,map

    redis提供了一下操作方法,我们使用这些方法就可以对存入字符串,组织成各种类型数据库结构(string,list,set,map).

     

    3.1 redis的使用场景

    (1) 最多 就是缓存 --redis

    (2)计数器应用 -- 微博 热点新闻 -- 转载 点赞(高并发)

    (3)实时防攻击系统 -- 银行网站 (登录) --计数 (ip 同一个ip + 5)

    ​ redis--支持断电恢复 内存和磁盘

    (4)有效期的应用 -- 道具 红包 优惠券 ...

    (5)支持无序的场景 -- set特效

    (6)队列 -->quene -->秒杀 抢购 --redis

    (7)消息系统订阅发布 -->redis

    4.1 使用redis

    (1)安装

    ​ 直接解压

    5.1 Redis的操作

    启动redis服务(带配置文件启动,和不带配置文件启动)

    在解压文件中输入cmd指令:redis-server.exe redis.windows.conf

    启动成功后,点击redis-cli.exe启动客户端

    进行操作。

    (1)基本操作

    ​ 对字符串操作

    ​ set key value

    ​ get key

    ​ mset /mget

    ​ incr decr incrBy decrBy

    (2)对key的操作

    ​ keys *

    ​ expire key seconds

    ​ ttl key

    ​ del key

    ​ flushall 清库 (0-15个)

    ​ flushdb 清当前库

    ​ select index

    (3)对list操作

    ​ lpush(rpush) key value1/value2...

    ​ lpop(rpop) key 弹出一个值

    ​ lrange key start stop 搜索查询

    ​ lrem key count value 移出

    ​ lindex key index

    ​ ltrim key start stop (对集合进行修剪)

    (4)set操作

    ​ sadd key members 添加值

    ​ srem key member 删除值

    ​ smembers key 查看可以对应的值

    (5)hash操作

    ​ hset key name value --设置key value

    ​ hget key name --通过key获取值

    ​ hmset key name1 key1 name2 key2 --批量设置

    ​ hmget key name1 name2 --批量获取

    ​ hkeys --获取所有的key

    ​ hvals --获取所有的value

    ​ hgetall --获取所有的key和value

    以后使用比较多的结构:

    ​ string /list /map(hash) /set ---常用

     

     

     

     

  • 相关阅读:
    数据库的架构和优化
    描述一个高性能高可靠的网站架构——如何设计一个秒杀系统
    PHP手册-函数参考-加密扩展
    系统性能指标总结
    PHP实现负载均衡的加权轮询
    PHP生成二维码
    高性能网站架构
    PHP实现Redis的数据结构和LFU/LRU
    缓存的设计及PHP实现LFU
    网络开发库从libuv说到epoll
  • 原文地址:https://www.cnblogs.com/bigbigxiao/p/12069697.html
Copyright © 2011-2022 走看看