memcached源码分析

《memcached源码分析》 memcached

1.简介

Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。通过在内存里维护一个大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果。一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。

2.特征

  • 协议简单(key-value存储系统)
  • 基于libevent的事件处理
  • 内置内存存储方式
  • memcached不互相通信的分布式

3.局限性

  • 不支持数据的可持久化
  • 仅支持简单K/V类型数据,无法提供List/Set/Hash等数据结构存储
  • 不支持的主从数据备份,并且由于无法进行数据同步,因此生产环境中出现单机故障时可能会影响部分业务运行
  • 服务端原生不支持水平扩展,必须在客户端编写缓存分布策略来实现分布式缓存

4.导航

因为我在工作项目中主要的开发语言是C++,memcached作为一款经典的C开源项目,在工作之余对其源码进行学习总结,接下来我会抽出一部分时间在此记录总结我的学习历程与成果,希望在这个过程中彼此可以相互学习与进步。
1.memcached源码分析-网络模块
2.memcached源码分析-指令解析模块
3.memcached源码分析-哈希表(hashtable)模块
4.memcached源码分析-slab存储机制

    原文作者:saltcc
    原文地址: https://www.jianshu.com/p/aeda59b767ed
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞