redis面试题

是什么

Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库

特点和优势

高性能,丰富的数据类型,支持通知、订阅、过期、持久化

有哪几种淘汰策略

volatile:lru,ttl,random

allkeys:lru,ttl,

数据呈现幂律分布:allkeys-lru

no-enviction

数据呈现平等分布:allkeys-random

一个字符串类型的值能存储最大容量是多少

512M

有哪些集群方案?

  1. twemproxy
  2. codis
  3. redis cluster3.0自带的集群

Redis有哪些适合的场景?

  1. 会话缓存
  2. 全页缓存(FPC)
  3. 队列
  4. 排行榜/计数器
  5. 发布/订阅

Redis支持的Java客户端都有哪些?官方推荐用哪个?

Redisson、Jedis、lettuce等等,官方推荐使用Redisson。

说说Redis哈希槽的概念?

Redis集群没有使用一致性hash,而是引入了哈希槽的概念,Redis集群有16384个哈希槽,每个key通过CRC16校验后对16384取模来决定放置哪个槽,集群的每个节点负责一部分hash槽。

Redis集群之间是如何复制的?

异步复制

Redis集群最大节点个数是多少?

16384个。

Redis如何做内存优化?

尽可能使用散列表(hashes)

Author: bkdwei

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注