黑马程序员技术交流社区

标题: 【成都校区】redis小结 [打印本页]

作者: 大大大大泡泡糖    时间: 2019-1-16 16:02
标题: 【成都校区】redis小结
# Redis
        1. 概念: redis是一款高性能的NOSQL系列的非关系型数据库
            1.1.什么是NOSQL
                        NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。

                                1)复杂查询可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询。
                                2)事务支持使得对于安全性能很高的数据访问要求得以实现。对于这两类数据库,对方的优势就是自己的弱势,反之亦然。
                                关系型数据库与NoSQL数据库并非对立而是互补的关系,即通常情况下使用关系型数据库,在适合使用NoSQL的时候使用NoSQL数据库,
                                让NoSQL数据库对关系型数据库的不足进行弥补。
                                一般会将数据存储在关系型数据库中,在nosql数据库中备份存储关系型数据库的数据
1.3 什么是Redis
                        Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供测试数据,50个并发执行100000个请求,读的速度是110000次/s,写的速度                            是81000次/s ,且Redis通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如下:
                                1) 字符串类型 string
                                2) 哈希类型 hash
                                3) 列表类型 list
                                4) 集合类型 set
                                5) 有序集合类型 sortedset
                        1.3.1 redis的应用场景
                                •        缓存(数据查询、短连接、新闻内容、商品内容等等)
                                •        聊天室的在线好友列表
                                •        任务队列。(秒杀、抢购、12306等等)
                                •        应用排行榜
                                •        网站访问统计
                                •        数据过期处理(可以精确到毫秒
                                •        分布式集群架构中的session分离

通用命令
                        1. keys * : 查询所有的键
                        2. type key : 获取键对应的value的类型
                        3. del key:删除指定的key value

持久化
                1. redis是一个内存数据库,当redis服务器重启,获取电脑重启,数据会丢失,我们可以将redis内存中的数据持久化保存到硬盘的文件中。
                2. redis持久化机制:
                        1. RDB:默认方式,不需要进行配置,默认就使用这种机制

                          持久化
                        2. redis持久化机制:
                        1. RDB:默认方式,不需要进行配置,默认就使用这种机制
* 注意:使用redis缓存一些不经常发生变化的数据。
                * 数据库的数据一旦发生改变,则需要更新缓存。
                        * 数据库的表执行 增删改的相关操作,需要将redis缓存数据情况,再次存入
                        * 在service对应的增删改方法中,将redis数据删除。
               







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2