一、首先redis是什么?
REmote DIctionary Server(远程字典服务器). 它是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,
基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器。
Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用.
二、关于事物方面的话
它是支持事物的,像mysql差不多,它使用multi开启事务 ,多个命令操作。。。 使用exec提交事务(错误命令导致异常,使用discard回滚)
Multi ---------开启事物 Set k1 1 ---------- 传入数据 Set k2 2 。。。 Exec/discard -------提交或者失败就回滚 |
三、关于线程方面
redis是单线程,内部采用了队列技术实现串型访问
四、简述对redis的理解
Key-value的数据存储形式,纯内存数据库,非常快,当然redis也支持持久化(rdb和aof)redis.conf。有五种类型:string hash list set zset。
可以做分布式存储,主从复制,集群(集群采用了轮询、随机等算法)。
五、电商项目中redis的应用
主要是用来做缓存,如首页的商品分类,模块内容,还有一些业务查询数据(查单个商品)
也有其他的用途如:
1、 系统之间的单点登录 ( session共享)
2、计数器,如商品的 id自增 incr incrby
3 、排行榜,使用了zset(有一个分数的概念)
4 、秒杀抢购(redis的watch乐观锁)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如有更好想法,请下方留言,谢谢观看!