菜鸟刷面试题(三、Redis篇)
目录: redis是什么?都有哪些使用场景? redis有哪些功能? redis和memecache有什么区别? redis为什么是单线程的? 什么是缓存穿透?怎么解决? redis支持的数据类型有哪些? redis支持的java客户端都有哪些? jedis和 redisson 有哪些区别? 怎么保证缓存和数据库数据的一致性? redis持久化有几种方式? redis怎么实现分布式锁? redis分布式锁有什么缺陷? redis如何做内存优化? redis淘汰策略有哪些? redis是什么?都有哪些使用场景? 1、Redis是一款开源的、基于C语言编写的key value数据库,其数据读写基于内存,性能高。 2、Redis使用场景很多: 可作用于底层DB的缓存层 分布式锁 使用list做热点数据排行 GEO做地理位置统计 等等。。。。。。 redis有哪些功能? 数据持久化、事务、发布订阅消息、主从复制、集群、哨兵等等。 redis和memecache有什么区别? memecache目前 仅支持k/v类型 的数据存储,而redis支持的 存储方式更加丰富 。 memecache 挂掉了数据就没了 ,redis有 持久化 策略。 。。。。。。 redis为什么是单线程的? 我们首先要知道Redis是一个高效的key/value数据库,且 采用内存读写数据 。 那么既然是