IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    PHP缓存几种缓存方式的差异

    Zhang.发表于 2023-12-17 10:16:00
    love 0

    前言

    在进行BearSimple主题设置时

    几种不同的缓存方式

    Memcached

    适用memcached的业务场景:
    1)如果网站包含了访问量很大的动态网页,因而数据库的负载将会很高。由于大部分数据库请求都是读操作,那么memcached可以显著地减小数据库负载。
    2)如果数据库服务器的负载比较低但CPU使用率很高,这时可以缓存计算好的结果( computed objects )和渲染后的网页模板(enderred templates)。
    3)利用memcached可以缓存session数据、临时数据以减少对他们的数据库写操作。
    4)缓存一些很小但是被频繁访问的文件。
    5)缓存Web 'services'(非IBM宣扬的Web Services,译者注)或RSS feeds的结果.。

    Redis

    1、页面缓存
    Redis可将Web页面的内容片段,包括HTML,CSS和图片等静态数据,缓存到Redis实例,提高网站的访问性能。
    比如在电商类应用中,热销商品展示、秒杀推荐等数据面临高并发读的压力,分布式缓存Redis的高并发及灵活扩展,可轻松支持此类应用。
    2、状态缓存
    Redis可将Session会话状态及应用横向扩展时的状态数据等缓存到DCS实例,实现状态数据共享。在应对游戏应用中爆发式增长的玩家数据存储和读写请求时,使用分布式缓存Redis可通过将热点数据放入缓存,加快用户端访问速度,提升用户体验。
    3、应用对象缓存
    Redis可作为服务层的二级缓存对外提供服务,减轻数据库的负载压力,加速应用访问。
    4、事件缓存
    Redis可提供针对事件流的连续查询(continuous query)处理技术,满足实时性需求。

    Apcu

    1、以扩展的方式接入,跟php这门语言有很强的耦合,而redis作为独立服务存在,使用协议接入
    2、apcu受限于单机内存的限制,扩展受阻,而目前的redis集群模式已经可以做到动态扩容,理论上无容量风险。
    3、apcu数据存于单机内存,多机器之间的数据无法共享,这使其使用场景有限。
    所以一般用apcu来缓存数据量小、但是读取量大或者瞬间读取量大的场景,例如对redis中的热数据做二级缓存以避免缓存雪崩带来的影响和缓解redis服务器的压力。

    SQLite

    这个不太懂,也没查到相关的内容,有没有懂得朋友帮忙解释一下

    Flysystem

    这个不太懂,也没查到相关的内容,有没有懂得朋友帮忙解释一下

    Memory

    这个不太懂,也没查到相关的内容,有没有懂得朋友帮忙解释一下


沪ICP备19023445号-2号
友情链接