我们知道,mysql是持久化存储,存放在磁盘里面,检索的话,会涉及到一定的IO,为了解决这个瓶颈,于是出现了缓存,比如现在用的最多的 memcached(简称mc)。首先,用户访问mc,如果未命中,就去访问mysql,之后像内存和硬盘一样,把数据复制到mc一部分。

  redis和mc都是缓存,并且都是驻留在内存中运行的,这大大提升了高数据量web访问的访问速度。然而mc只是提供了简单的数据结构,比如 string存储;redis却提供了大量的数据结构,比如string、list、set、hashset、sorted set这些,这使得用户方便了好多,毕竟封装了一层实用的功能,同时实现了同样的效果,当然用redis而慢慢舍弃mc。

  内存和硬盘的关系,硬盘放置主体数据用于持久化存储,而内存则是当前运行的那部分数据,CPU访问内存而不是磁盘,这大大提升了运行的速度,当然这是基于程序的局部化访问原理。

  推理到redis+mysql,它是内存+磁盘关系的一个映射,mysql放在磁盘,redis放在内存,这样的话,web应用每次只访问redis,如果没有找到的数据,才去访问Mysql。

  然而redis+mysql和内存+磁盘的用法最好是不同的。

  转载,仅供参考

前者是内存数据库,数据保存在内存中,当然速度快。
后者是关系型数据库,功能强大,数据访问也就慢。
像memcache,MongoDBRedis,都属于No sql系列。
不是一个类型的东西,应用场景也不太一样,还是要看你的需求来决定。

http://blog.sina.com.cn/s/blog_6265c8a10100qrvr.html

最新文章

  1. Design Tic-Tac Toe
  2. Bzoj2648 SJY摆棋子
  3. POJ 2750 Potted Flower (线段树区间合并)
  4. pH 值与曝气对硝化细菌硝化作用的影响
  5. [转]初探 PhoneGap 框架在 Android 上的表现
  6. 在用的vim插件
  7. 【原】Redis事务管理
  8. How to get Directory size in IsolatedStorage of Windows Phone 8 App
  9. Linux中命令行编译java接口总是提示找不到符号的疑难杂症的解决
  10. 百度地图在某架构下找不到符号.a文件的问题
  11. 从excel读数据到informix的Found a quote for which there is no matching quote错误
  12. 《Linux就该这么学》第十天课程
  13. leetcode-Evaluate the value of an arithmetic expression in Reverse Polish Notation
  14. golang环境 centos 7
  15. linux系统下创建oracle表空间和用户权限查询
  16. Python基础之Python的变量、常量
  17. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(五)针对hadoop2.9.0启动之后发现slave上正常启动了DataNode,DataManager,但是过了几秒后发现DataNode被关闭
  18. RDD PAPER
  19. Python asyncio文档阅读摘要
  20. 在哪个web.xml中配置welcome页面

热门文章

  1. WPF3.5 使用BINDINGGROUP进行实体类和集合验证
  2. PowerDesigner逆向工程,从SQL Server数据库生成Physical Model -----数据源方式
  3. EasyDarwin开发的短视频拍摄、录制开源项目EasyVideoRecorder
  4. Google Guava之Optional优雅的使用null
  5. Requires: libstdc++.so.6(GLIBCXX_3.4.15)(64bit)
  6. Rethinking the Inception Architecture for Computer Vision
  7. 整形范围 运行Java代码的机器
  8. Javascript学习之Math对象详解
  9. SpringBoot-(1)-IDEA创建SpringBoot项目并运行访问接口
  10. TMS320C6478+MCP2515