Redis
Redis是一种NoSQL数据库,可用于缓存、消息队列等。
如果让MySQL数据库服务成千上万的用户,磁盘I/O会成为应用处理请求的时间瓶颈。如果将数据存在内存中,数据库直接从内存中读取数据,就可以解决这个问题。
Redis有以下优势:
- 性能极高
- 简单易用
- 支持数据持久化、主从复制、哨兵模式等高可用特性
Redis支持五种基本数据类型和五种高级数据类型。
基本数据类型分别是:
- 字符串String
- 列表List
- 集合Set
- 有序集合SortedSet
- 哈希Hash
高级数据类型分别是:
- 消息队列Stream
- 地理空间Geospatial
- HyperLogLog
- 位图Bitmap
- 位域Bitfield
命令
数据在Redis中以键值对的形式存储,SET命令需要指定一个键(区分大小写)和一个值。GET <key>可以获取指定键的值,DEL命令可以删除一个键。
Redis中很多数据都是用字符串存储的,比如数字。
linlinzzo@linlinzzo:~$ redis-cli
127.0.0.1:6379> SET name linlin
OK
127.0.0.1:6379> GET name
"linlin"
127.0.0.1:6379> SET age 3
OK
127.0.0.1:6379> GET age
"3"
127.0.0.1:6379> DEL age
(integer) 1
EXISTS <key>命令可以判断一个键是否存在,存在返回1,不存在返回0。
KEYS *查找所有的键,KEY *me查找所有以me结尾的键。
FLUSHALL删除所有键。
TTL <key>查看键的过期时间(-2为过期,-1没有过期时间),EXPIRE <key> <second>设置过期时间,