关于缓存的初级研究(一)
来源:互联网 发布:c 在线答题系统源码 编辑:程序博客网 时间:2024/05/15 02:01
一,为什么要使用缓存技术?
缓存是一种副本的体现,当一次访问来临时,数据通过数据库服务器来读取数据,包装并且返回给浏览器,当下一次同一个请求过来时,是否有必要在发生数据库的交互?完全没有必要,因为数据库的链接,查询,封装是从磁盘到内存的过程,磁盘读取相对于内存直接读取时缓慢和浪费时间的,所以我们引入缓存技术,使用一些基于内存的存储软件来保存上次读取的结果,在下次同样的请求过来时,先去缓存中插找是否有记录,有则直接返回,没有再通过数据库获取数据,然后写入缓存中。(缓存的数据主要是修改量小,基本不变,但是访问量大的数据)
二,市场上被广泛使用的缓存技术
Memcache
Redis(可以作为数据库,也可以做为缓存)
1,Memcache
基于客户端键的伪(服务器)分布式,只是通过算法将不同键值存储于不同的服务器上(看起来是分布的,其实是多服务器的利用)
2,Redis
2.1 丰富的数据结构(Hash,Set,List,Sorted...)
2.2 可以持久化到磁盘
2.3 支持cluster(3.0)(分片及集群)
2.4 性能和Memcached不相上下,加上流行的其他组件(比如队列)也会用到redis,从架构简单性出发,没必要混用redis和memcached
1 0
- 关于缓存的初级研究(一)
- wp7初级研究(一)
- 关于ADMM的研究(一)
- 关于listview的研究(一)
- web开发中的缓存问题的研究(一)
- web开发中的缓存问题的研究(一)
- web开发中的缓存问题的研究(一)
- web开发中的缓存问题的研究(一)
- web开发中的缓存问题的研究(一)
- 一国外软件的加密防护研究(初级水准)
- SQLite的初级研究
- 深度缓存(Z缓存)的研究
- BI系统研究(初级)
- socket缓存的研究
- 关于MHT文件研究(一)
- java的初级学习(一)
- 初级web api的设计(一)
- 关于Asp.net 缓存笔记(一)
- Oracle中用一个表的数据更新另一个表的数据
- scala数据结构和算法-05-插入排序实现
- 深入理解java虚拟机——判断对象的“死活”
- Altium Designer16 精心总结
- Oracle数据库的导出导入和循环
- 关于缓存的初级研究(一)
- 第三章 授权——《跟我学Shiro》[张开涛]
- 学习ThinkPHP开源框架(二)
- C/C++提高算法效率的小技巧
- 日志分析查看——grep,sed,sort,awk运用
- Spring MVC Web 引入静态文件
- linux下Qt5 编译出现cannot find -IGL问题修复
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题
- 高性能IO模型浅析