一 :Redis 简介
redis 是目前最受欢迎的NoSql 数据库,是以内存作为数据存储介质,所以读写数据的效率极高,远远超过数据库。
redis的存储分为内存存储、磁盘存储和log文件三部分,重启后,Redis可以从磁盘重新将数据加载到内存中,此特性保证了数据的持久化。
今天主要简单的介绍下 redis的五种数据结构及其简单运用。

二 :String 结构与应用场景
1、单值缓存
set key value
get key

2、对象缓存
mset key value [key value …]
mget key [key …]

3、分布式锁
setnx key value [set if not exists]
key 不存在时,设置成功,返回 1,key 存在则不做任何操作 返回0
比如对一个商品 Logitech:gpw 进行加锁,因为redis 是单线程的,只有一个加锁成功,其他返回加锁失败,操作如下:

4、web集群session 共享
使用spring session + redis 实现 session 共享
5、计数器
incr key
应用场景 :
①:如右图的阅读数
②:对于自增需要的处理


@Autowired
private RedisTemplate redisTemplate;
/**
* TS+日期+4位数字
*
* @return
*/
public String getComplaintCode() {
SimpleDateFormat dfst = new SimpleDateFormat("yyyyMMdd");
String newDate = dfst.