Java 面试题大全
一、Redis 是什么?
Redis 是一个 key-value 存储系统,它支持存储的 value 类型相对更
多,包括 string、list、set、zset(sorted set --有序集合)和 hash。
这些数据结构都支持 push/pop、add/remove 及取交集并集和差集及
更丰富的操作,而且这些操作都是原子性的。在此基础上,Redis 支
持各种不同方式的排序。为了保证效率,数据都是缓存在内存中,
Redis 会周期性地把更新的数据写入磁盘或者把修改操作写入追加的
记录文件,并且在此基础上实现了 master-slave(主从)同步。
二、Redis 都有哪些使用场景?
Redis 是基于内存的 nosql 数据库,可以通过新建线程的形式进行持久
化,不影响 Redis 单线程的读写操作
通过 list 取最新的 N 条数据
模拟类似于 token 这种需要设置过期时间的场景
发布订阅消息系统
定时器、计数器
三、Redis 有哪些功能?
1、基于本机内存的缓存
当调用 api 访问数据库时,假如此过程需要 2 秒,如果每次请求都要
访问数据库,那将对服务器造成巨大的压力,如果将此 sql 的查询结
果存到 Redis 中,再次请求时,直接从 Redis 中取得,而不是访问数