PHP进阶 - 文件缓存 - 个人小结

第一次接触到缓存时候,觉得不可理解,为什么需要需要缓存呢?

慢慢地,发现其实缓存的确有很多的优点:

1.能够大幅度减少数据的获取时间,特别是对于 sql 慢查询来讲,缓存机制可以明显的优化用户体验。

2.减少获得数据的计算资源消耗,给其他服务腾出计算资源,对于计算过程比较漫长的所得出的结果来说,缓存也可以明显减少二次加载时间。

3.可以降低服务器的性能要求,能够降低网站运行成本。

这里来说说文件缓存的优缺点

优点:

1.系统适应性高,只需要语言支持文件操作就可以实现,语言本身也不需要额外的拓展包。

2.简单可读,可以以文本的格式存储缓存数据。

缺点:

1.频繁的文件IO可能会造成磁盘比较容易损坏。

2.文件缓存可能会造成高并发写的情况,这个情况要做好控制。

3.相对于其他比较常用的,例如redis,memcached来说,效率比较低。

4.对于 KEY 的管理可能不是特别明朗

文件缓存的注意事项

1.同一个文件下的缓存文件尽量不要太多,不然会影响操作系统的查找文件索引的效率。可以尝试哈希数据的KEY之后,按照前几个子串来建立文件目录

2.做好并发控制,例如,写的时候,其他线程放弃对这个文件写入。

3.根据数据实时性的要求,来决定缓存数据的缓存策略:什么数据不容忍脏数据缓存;什么数据可以容忍只 SET 不删,并设置合理的容忍时间;什么数据需要缓存,并应用相关策略。

你可能感兴趣的:(PHP进阶 - 文件缓存 - 个人小结)