文件缓存介绍

随着网络的发展,数据越来越多,从而导致运算压力越来越大。为了解决这一问题,就需要合理分配资源,充分利用已有资源,缓存的工作实际就是资源的合理分配。

在web世界里,理论上每层都可以被缓存。

  1. 底层的cpu缓存,磁盘文件缓存。
  2. 应用层的虚拟机变量缓存,memcached缓存,apc基于字节码的缓存。
  3. 数据库层table cache,thread cache,queary cache.
  4. servlet 容器层有apache缓存

命中率衡量缓存机制的好坏和效率。

一般来说命中率达到85%以上已经很高了,达到98%是理想状态。

缓存更新策略

FIFO最先进缓存的数据在缓存空间不够的情况下,会首先清理出来。

LFU最少使用元素会被清理掉。这要求缓存元素有Hit属性,最小的先被清理掉。

LRU最近最少使用的元素被清理掉。缓存元素有个时间戳,最早的元素会被清理掉。

文件缓存开元产品

Secache文件型缓存解决方案。

无需任何扩展。

使用LRU算法自动清理过期内容。

最大支持1GB缓存文件。

使用hash定位,读取快速。

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2014-12-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人人都是极客

聊聊Linux IO(上)

如果你觉得这些问题都很简单,都能很明确的回答上来。那么很遗憾这篇文章不是为你准备的,你可以关掉网页去做其他更有意义的事情了。如果你觉得无法明确的回答这些问题,那...

323
来自专栏技术总结

iOS进阶之消息转发机制

2486
来自专栏小勇DW3

redis cluster是如何做到集两家之长的

站在读写分离的层次看redis的时候,redis和master和slave存在明显的主从关系,也就是说master处于管理状态,salve跟着大哥混,maste...

852
来自专栏撸码那些事

【封装那些事】 不充分的封装

以汽车为例,我们并不需要了解发动机的原理就可以开车。这准确描绘了封装原则的作用:用户无需知道抽象(汽车)的细节,此外,封装原则还让抽象能够隐藏实现细节的变化。发...

46513
来自专栏C/C++基础

进程与线程的区别

在开发工作中,尤其是对负载较大的服务端程序的开发,为充分发挥处理器多核性能,提高硬件资源利用率,增加系统吞吐量,少不了并发编程。并发编程一般通过多进程和多线程的...

613
来自专栏撸码那些事

【封装那些事】不充分的封装

1112
来自专栏企鹅号快讯

使用postman快速建立MOCK使用篇

首先介绍一下Mock,借用一下百度百科解释:mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法, 其...

3915
来自专栏北京马哥教育

面试分享系列 | 17道Python面试题,让你在求职中无往不利

今天给大家分享的是Python面试题系列的第一篇文章,后续我也会陆续整理Python相关的问题给大家,无论是求职者还是新人都可以通过面试题来考察自己的能力缺陷。...

3054
来自专栏风火数据

高级Java研发师在解决大数据问题上的一些技巧

众所周知, Java 在处理数据量比较大的时候,加载到内存必然会导致内存溢出,而在一些数据处理中我们不得不去处理海量数据,在做数据处理中,我们常见的手段是分解,...

652
来自专栏H2Cloud

C++ 多进程并发框架FFLIB之Tutorial

      FFLIB框架是为简化分布式/多进程并发而生的。它起始于本人尝试解决工作中经常遇到的问题如消息定义、异步、多线程、单元测试、性能优化等。基本介绍可以...

4246

扫描关注云+社区