Memcached缓存——入门

1.Memcached介绍  

     Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度,现在已被LiveJournal、hatena、Facebook、Vox、LiveJournal等公司所使用。

2. Memcached工作方式

     许多Web应用都将数据保存到 RDBMS(即关系数据库管理系统(Relational Database Management System))中,应用服务器从中读取数据并在浏览器中显示。 但随着数据量的增大、访问的集中,就会出现RDBMS的负担加重、数据库响应恶化、 网站显示延迟等重大影响。Memcached是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web等应用的速度、 提高可扩展性。下图展示了memcache与数据库端协同工作情况:

d2.png

 其中的过程是这样的:

           1.检查用户请求的数据在缓存中是否有存在,如果存在的话,只需要直接把请求的数据返回,无需查询数据库。

           2.如果请求的数据在缓存中找不到,这时候再去查询数据库。返回请求数据的同时,把数据存储到缓存中一份。

          3.保持缓存的“新鲜性”,每当数据发生变化的时候(比如,数据有被修改,或被删除的情况下),要同步的更新缓存信息,确保用户不会在缓存取到旧的数据。

Memcached作为高速运行的分布式缓存服务器,具有以下的特点: 

  • 协议简单 
  • 基于libevent的事件处理 
  • 内置内存存储方式
  • memcached不互相通信的分布式

4.3 如何实现分布式可拓展性?

扫描二维码关注公众号,回复: 2939914 查看本文章

Memcached的分布式不是在服务器端实现的,而是在客户端应用中实现的,即通过内置算法制定目标数据的节点,如下图所示:

d3.png

猜你喜欢

转载自blog.csdn.net/weixin_38676357/article/details/82115363