面试宝典之Redis!

面试疑问写在前面,看过本文,让那些没使用过redis的也能回答上来面试官的问题,不至于陷入太尴尬的境地!因为现在好多面试官不单单只是问你,用没用过redis,而是会一直问下去,比如:你项目里面用redis做什么?里面放什么数据?什么类型?对于list类型的数据,我更改了一个如何高效率的刷新redis缓存?

面试宝典之Redis!

文章插图
 
带着这些疑问我们下面去讨论 。希望各位大佬勇于补充 。
Redis简介:
面试宝典之Redis!

文章插图
 
【面试宝典之Redis!】如大家所知道的一样,Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库(区别于MySQL等关系型数据库),并提供多种语言的API调用方案 。
Redis存储数据结构:一共支持五种数据类:
string(字符串)
hash(哈希)
list(列表)
set(集合)
zset(sorted set有序集合) 。
Redis内存占用情况:测试情况:90万个键值对(键是0到899999值是字符串“hello world”)在32位操作系统的笔记本上 用了90MB,但是使用64位的操作系统的话,相对来说占用的内存会多一点,这是因为64位的系统里指针占用了8个字节,但是64位系统也能支持更大的内存,所以运行大型的redis服务还是建议使用64位服务器 。
坚持一个原则:使用数据库能解决的业务场景,就不要使用REDIS 。
Redis使用场景:
  • 排行榜
  • 序列号
  • 计数器
  • 流水号
  • 验证码
  • 用户信息
  • token
  • 菜单
  • 最新列表
  • 关注列表
  • 分布式锁与单线程机制

面试宝典之Redis!

文章插图
 
下面具体说下每个数据类型的使用场景,也好应付面试官的随机发问 。
  • Zset使用场景
  1. 数据结构:ZSET
  2. 关键API:


      推荐阅读