MemCached简单介绍

    技术2022-05-19  28

    一、MemCached是什么?

    MemCached是一个免费、开源、高性能、分布式、基于内存的对象缓存系统。一般来说,使用MemCached可以加速动态web程序(通过缓解数据库负载)。它可以key-value(String,Object)形式,存储任意数据,如数据库调用结果、API调用结果等。

    MemCached主要由4部分组成: 1. 客户端软件,记录了所有有效MemCached服务器信息; 2. 一个基于客户端的hash算法,输入的key通过该算法找出特定MemCached服务器; 3. 服务器软件,在一个内部hash表中存储key-value; 4. 服务器算法,该算法决定何时请出旧数据以及重用内存。

    MemCached的设计理念: 1. 简单Key/Value存储(每条记录包括一个key、一个原生value值、一个过期时间、一个可选的flag),并且不关心Value的类型,可以存放任意数据类型; 2. 逻辑分别放在客户端与服务器端; 3. 服务器端彼此无感知; 4. 所有操作时间复杂度为O(1); 5. 到期数据自动过期,释放出内存为其它应用使用。

    理解误区: 不要理解为使用了MemCached会使程序跑得更快,MemCached只是一个开发工具,而不是代码加速器,或者可以理解为数据库中间件,MemCached会减少你与数据库的交互时间,从而感觉上是代码"变快"了。

     

    二、MemCached架构图

     

    项目主项:http://code.google.com/p/memcached/

    本文出自:冯立彬的博客


    最新回复(0)