MemCache分布式交叉存储——实现php页面访问速度与命中率的提高(缓存加速优化)

本文介绍了MemCache作为高性能分布式内存缓存系统,用于优化PHP页面访问速度。通过详细步骤解释了如何配置和使用MemCache,包括检查数据存在、从数据库获取数据并缓存、数据更新同步以及LRU策略。实验证明,MemCache能显著提高页面访问速度和命中率。
摘要由CSDN通过智能技术生成

一、概念讲解

  • 简介:

memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著 。这是一套开放源代码软件,以BSD license授权发布。

  • 1.memcache是一个高性能的分布式的内存对象缓存系统,用于动态web应用以减轻数据库负担
  • 2.memcache通过在内存里维护一个统一的巨大的hash表,来存储经常被读写的一些数组与文件,从而极大的提高网站的运行效率。
  • 3.memcache是一种内存缓存技术,是一种缓存手段,要看情况使用
  • 对于频繁读取,每次读取重复率高,数据更新频度低的数据,用memcache可以优化系统响应速度
  • memcache和memcached的区别:

memcache时这个项目的名称,而memcached是它服务端的主程序文件名

  • mamcache的使用场景:

访问频繁的字典数据,大量的hot数据,页面缓存,频繁的查询条件和结果,临时处理的数据

  • memcache的工作流程如下:

在这里插入图片描述

  • (1)检查客户端的请求数据是否存在,memcached中,如果有请求的数据,直接把请求的数据返回,不再对数据库进行任何操作,路径为:①②③⑦,client->web/app+memcache client->memcache->web/app+memcache client->client
  • (2)如果请求的数据不在memcached中,就去查数据库,把从数据库中获取的数据返回给数据库,同时把数据缓存一份到memcached中(memcached客户端不负责,需要程序明确实现),①②④⑤⑦⑥,client->web/app+memcache
    client->memcache->DB->web/app+memcache client->client
  • (3)每次更新数据库的同时更新memcached中的数据,保证一致性
  • (4)当分配给memcache内容空间用完后,会使用LRU策略加上到期失效策略,失效数据首先被替换,然后再替换掉最近未使用的数据

LRU简介:

LRU是Least Recently Used

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值