文件缓存介绍

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

在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 条评论
登录 后参与评论

相关文章

来自专栏Spark学习技巧

基石 | Flink Checkpoint-轻量级分布式快照

前面两篇,一篇是spark的driver的Checkpoint细节及使用的时候注意事项。一篇是flink的Checkpoint的一些上层解释。本文主要是将fli...

1121
来自专栏Golang语言社区

goroutine背后的系统知识

Go语言从诞生到普及已经三年了,先行者大都是Web开发的背景,也有了一些普及型的书籍,可系统开发背景的人在学习这些书籍的时候,总有语焉不详的感觉,网上也有若干...

3278
来自专栏JAVA高级架构

结合RPC框架通信谈 netty如何解决TCP粘包问题

因为自己造一个RPC框架的轮子时,需要解决TCP的粘包问题,特此记录,希望方便他人。这是我写的RPC框架的 GitHub地址 https://github.co...

713
来自专栏Golang语言社区

channel机理及调度理解

《Go语言编程》一书介绍了libtask库,可以认为这个库等同于go的底层goroutine实现。

873
来自专栏编程

tornado全面剖析与实践系列1

猿助猿的技术栈是基于Tornado的, 在学习的过程中参考了很多文章, 但是内容大都碎片化, 缺少系统性讲解, 而且不少关于异步应用的内容还是基于过时的旧版本....

2659
来自专栏NetCore

Sync Framework 词汇表

Sync Framework 词汇表 此词汇表列出和定义了 Microsoft Sync Framework 涉及的概念和术语。 术语 批处理 (batch...

1886
来自专栏Java技术

分布式锁简单入门以及三种实现方式介绍

很多小伙伴在学习Java的时候,总是感觉Java多线程在实际的业务中很少使用,以至于不会花太多的时间去学习,技术债不断累积!等到了一定程度的时候对于与Java多...

601
来自专栏java思维导图

mybatis思维导图,让mybatis不再难懂(二)

mybatis思维导图,让mybatis不再难懂(二) 上一篇文章写了mybatis的基本原理和配置文件的基本使用,这一篇写mybatis的使用,主要包括与sp...

3767
来自专栏Golang语言社区

goroutine背后的系统知识

Go语言从诞生到普及已经三年了,先行者大都是Web开发的背景,也有了一些普及型的书籍,可系统开发背景的人在学习这些书籍的时候,总有语焉不详的感觉,网上也有若干流...

2465
来自专栏王磊的博客

后台设计中容易被忽略的坑

1.数据关联性删除判断   示例:比如后台发布了一个待抢购的订单,app已经把此单抢购,因为后台没有及时刷新状态,所有如果要删除或下架此笔订单,必须先要验证此订...

35310

扫码关注云+社区