Redis缓存中间件、RabbitMQ消息中间件,Redission综合中间件
1.redisredis
Redis的数据类型和基本命令
redis实际上就是带键值对的数据库。
redis支持五种数据类型:string(字符串),hash(哈希)、list(表格),set(集合)、zset(sorted set:有序集合)。新版的有6种。
1.string
string类型是二进制,所以可以存放任何数据,比如jpg图片或者序列化对象。
不区分大小写,key区分大小写。
相关命令:
setex 中的60是60 秒以后过期。
2.hash(哈希)
Redis hash 是一个键值(key=>value)对集合,类似java的map.
Redis hash 是一个string 类型的field和value的映射表,hash特别适合用于存储对象。
相关命令:
hset a number 99 name hong//定义一个a表 ,学号是99,名字是hong
3. List(列表)
列表是简单的字符串列表,按照插入顺序排列,可以添加一个元素到列表的头部(左边)或者尾部(右边)。
lpush list v2 v1 v3 //依次输入 v2 v1 v3
lrange list 0 10 //依次输出list的内容(这种是从左边输出),结果是v3 v1 v2,类似于栈的先入后出,具体如下
rpop list //弹出一个,弹出的是第一个输入的元素,
结果是v2 ,相当于去掉一个元素,类似队列先进先出
//此时再查看list的内容时,list就少了一个v2
lrange list 0 10 //结果是v3 v1
相关运行如下:
4.set(集合)
redis的Set是string类型的无序集合。
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1).
相对于列表,集合也有两个特点:1无序,2不可重复
相关命令:
输出是无序的,随机的,
smember <名称>//查看所有
5.zset(sorted set:有序集合)
Redis zset 和set一样也是string 类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数 。redis正是通过分数来为集合中的成员进行从小到大的排序。
zset的成员是唯一的,但分数(score)却可以重复。
相关命令: