Memcached 面试题

简介: Memcached 面试题

2、Memcached 服务分布式集群如何实现?
特殊说明:Memcached 集群和 web 服务集群是不一样的,所有 Memcached 的
数据总和才是数据库的数据。每台 Memcached 都是部分数据。
(一台 memcached 的数据,就是一部分 mysql 数据库的数据)
a、程序端实现
程序加载所有 mc 的 ip 列表,通过对 key 做 hash (一致性哈希算法)
例如:web1 (key)===>对应 A,B,C,D,E,F,G…..若干台服务器。(通过哈希算法实
现)
b、负载均衡器
通过对 key 做 hash (一致性哈希算法)
一致哈希算法的目的是不但保证每个对象只请求一个对应的服务器,而且当节点
宕机,缓存服务器的更新重新分配比例降到最低。
3、Memcached 服务特点及工作原理是什么?
a、完全基于内存缓存的
b、节点之间相互独立
c、C/S 模式架构,C 语言编写,总共 2000 行代码。
d、异步I/O 模型,使用 libevent 作为事件通知机制。
e、被缓存的数据以 key/value 键值对形式存在的。
f、全部数据存放于内存中,无持久性存储的设计,重启服务器,内存里的数据会
丢失。
g、当内存中缓存的数据容量达到启动时设定的内存值时,就自动使用 LRU 算法
删除过期的缓存数据。
h、可以对存储的数据设置过期时间,这样过期后的数据自动被清除,服务本身不
会监控过期,而是在访问的时候查看 key 的时间戳,判断是否过期。
j、memcache 会对设定的内存进行分块,再把块分组,然后再提供服务。

相关文章
|
缓存 Unix 网络安全
Memcached 面试题
Memcached 面试题
|
缓存 算法
Memcached 面试题
Memcached 面试题
|
存储 缓存 算法
Memcached 面试题
Memcached 面试题
|
SQL 存储 缓存
Memcached 面试题
Memcached 面试题
|
存储 缓存 算法
Memcached 面试题
Memcached 面试题
|
存储 缓存 前端开发
Memcached 面试题
Memcached 面试题
|
7月前
|
Linux Memcache
Linux - 安装memcached
Linux - 安装memcached
109 0
Linux - 安装memcached
|
6月前
|
缓存 Java Spring
SpringBoot配置第三方专业缓存技术Memcached 下载 安装 整合测试 2024年5000字详解
SpringBoot配置第三方专业缓存技术Memcached 下载 安装 整合测试 2024年5000字详解
47 0
|
Docker 容器
Docker下安装memcached
Docker下安装memcached
166 0