(1)持久化数据库的缺点
平常我们使用的关系型数据库有Mysql、Oracle以及SqlServer等,在开发的过程中,
数据通常都是通过Web提供的数据库驱动来链接数据库进行增删改查。

那么,我们日常使用的数据库的数据都储存在哪里呢?我们以Mysql为例。
打开我们Mysql所在的文件夹目录下的data文件夹,如下所示:


我们可以发现,里面都是我们创建的数据库,打开其中一个,可以看到我们创建的表,
他们以文件(格式frm和ibd)的形式存在:


也就是说,我们日常使用的关系型数据中的数据,全部存储在我们部署数据库的机器
硬盘中。

一般我们的网站开发完成,上线之后,服务器的读写效率是网站运行速度的重要条件,
当然还有服务器的带宽等,但是这些东西都可以通过硬件的更新升级来解决。
其实与网站运行效率息息相关的东西,就是我们的------数据库。

数据库处理数据的速度,与网站速度息息相关,而数据查询、数据处理等等,
都和数据库处理速度有关。提高数据库的处理数据的能力,其中一个方案就是
sql语句的优化技术,sql语句写的处理效率比较高,数据库处理能力就会上去,
而网站的数据处理能力也会快些。

但是,当网站的处理和访问量非常大的时候,我们的数据库的压力就变大了,数据库的
连接池,数据库同时处理数据的能力就会受到很大的挑战,一旦数据库承受了其最大承受
能力,网站的数据处理效率就会大打折扣。此时就要使用高并发处理、负载均衡和分布式数据库,
而这些技术既花费人力,又花费资金。

如果我们的网站不是非常大的网站,而有想要提高网站的效率,降低数据库的读写次数,我们就
需要引入缓存技术。

(2)缓存
缓存就是在内存中存储的数据备份,当数据没有发生本质改变的时候,我们就不让数据的查询去
数据库进行操作,而去内存中取数据,这样就大大降低了数据库的读写次数,而且从内存中读数据
的速度比去数据库查询要快一些,这样同时又提高了效率。

使用缓存减轻数据库的负载:
在开发网站的时候如果有一些数据在短时间之内不会发生变化,而它们还要被频繁访问,为了
提高用户的请求速度和降低网站的负载,就把这些数据放到一个读取速度更快的介质上(或者
是通过较少的计算量就可以获得该数据),该行为就称作对该数据的缓存。
该介质可以是文件/数据库/内存。内存经常用于数据库缓存。

缓存的两种形式:
页面缓存经常用在CMS(content manage system)内存管理系统里面。
数据缓存经常会用在页面的具体数据里面。

缓存分为两种:
页面缓存(smarty静态化技术)


数据缓存


(3)Redis介绍
我们要学习的一个缓存技术就是----Redis:
Redis是Remote Dictionary Server(远程数据服务)的缩写,由意大利人antirez(Salvatore Sanfilippo)开发的一款内存高速缓存数据库,该软件使用C语言编写,它的数据模型为key-value。
它支持丰富的数据结构(类型),比如String/List/Hash/Set/Sorted Set。

可持久化(一边运行,一边把数据往硬盘中备份一份,防止断电等情况导致数据丢失,等断电情况恢复之后,Redis再把硬盘中的数据恢复到内存中),保证了数据的安全。

(4)redis和memcache比较
1.Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
2.Redis支持master-slave(主-从)模式应用
3.Redis支持数据持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
4.Redis单个value的最大限制是1GB,memcached只能保存1MB的数据。
转载请注明出处:http://blog.csdn.net/acmman/article/details/53167917

redis1--redis的介绍的更多相关文章

  1. [转] Redis系统性介绍

    Redis系统性介绍 http://blog.nosqlfan.com/html/3139.html?ref=rediszt 虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了 ...

  2. Redis安装介绍

    Redis安装介绍 一.Linux版本及配置 1.  Linux版本:Red Hat Enterprise Linux 6虚拟机 2.  配置: 内存:1G:CPU:1核:硬盘:20G 二.Redis ...

  3. Redis全面介绍

    最近重新认识了一下Redis,借着这个机会,也整理一篇算是比较详尽和全面的文章吧.   缓存 缓存就是数据交换的缓冲区(称作Cache)——摘自百度百科.无论是在计算机硬件体系结构还是软件体系结构中, ...

  4. NoSQL数据库之Redis数据库:Redis的介绍与安装部署

     NoSQL(NoSQL = Not Only SQL),它指的是非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的w ...

  5. 4 Redis 配置文件介绍

    2016-12-22 14:28:39 该系列文章链接NoSQL 数据库简介Redis的安装及及一些杂项基础知识Redis 的常用五大数据类型(key,string,hash,list,set,zse ...

  6. 第五章· Redis主从复制介绍

    一.Redis主从复制 二.Redis主从复制工作机制 一.Redis主从复制 Redis复制功能简单介绍 1)使用异步复制.2)一个主服务器可以有多个从服务器.3)从服务器也可以有自己的从服务器.4 ...

  7. redis cluster介绍

    讲解分布式数据存储的核心算法,数据分布的算法 hash算法 -> 一致性hash算法(memcached) -> redis cluster,hash slot算法 一.概述 1.我们的m ...

  8. Python 基于python操纵redis入门介绍

    基于python操纵redis入门介绍 by:授客  QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3.3.2 基于Python操作R ...

  9. Python redis 简单介绍

    Python redis 简单介绍 1.安装 终端输入: pip(or)pip3.6 install redis 安装成功 2.哈哈,发现我并没有redis服务可以访问,所以到这里,在本机安装了red ...

  10. Redis数据库介绍

    引言 redis是一个开源的.使用C语言编写的.支持网络交互的.可基于内存也可持久化的Key-Value数据库. redis数据结构 redis是一种高级的key:value存储系统,其中value支 ...

随机推荐

  1. Chapter 21_1 字符串函数

    接下来开始接触Lua强大的字符串处理能功能——字符串库. 原始的Lua解释器操作字符串的能力很有限,真正强大的能力还是来自字符串库. 它所有的函数都在模块string中.它还为strings设置了一个 ...

  2. wpf listview 行变色

    <ListView x:Name="listView_Date" Grid.Row="3" BorderBrush="{x:Null}" ...

  3. BT 的相关资料

    1.Android中bluetooth的架构 http://blog.csdn.net/u011960402/article/details/11035947 2.Android4.0中Bluetoo ...

  4. Linux修改SSH端口和禁止Root远程登陆

    Linux修改ssh端口22 vi /etc/ssh/ssh_config vi /etc/ssh/sshd_config 然后修改为port 8888 以root身份service sshd res ...

  5. 2016-12-14 - SSH Tunnel

    2016-12-14 - SSH Tunnel ssh Network Topo Network Topo A: Internet sshd B: NAT sshd C: NAT B Create S ...

  6. angularjs中sortable的使用

    将每个li并列排序,同时可以实现拖拉排序功能 html: js:使用的插件:html.sortable.angularjs,html.sortable.js 实现的效果: 通过js中sortableO ...

  7. visual SVN 反编译破解

    今天发现visual SVN 过期了.网上搜索了一下,发现了下面的贴子. http://www.heiqu.com/show-71200-1.html 一看是用.Net写的,大喜,破解就太简单了.本来 ...

  8. 淘淘商城_day08_课堂笔记

    今日大纲 问题,如何实现商品数据的同步? 学习MQ(消息队列) 搭建RabbitMQ的环境 学习RabbitMQ的队列 学习Spring-Rabbit 使用RabbitMQ完成商品数据的同步 如何实现 ...

  9. MySQL5.5安装出现CMake错误找不到CMakelists.txt原因

    今天虚拟机上测试安装 CentOS6.3 + PHP5.4.8 + MySQL5.5.28,结果捣鼓了半天 MySQL都没装上,老是CMake目录下找不到那个 lists 文件,郁闷的不行,最后发现问 ...

  10. 一般增广路方法求网络最大流(Ford-Fulkerson算法)

    /* Time:2015-6-18 接触网络流好几天了 写的第一个模版————Ford-Fulkerson算法 作用:求解网络最大流 注意:源点是0 汇点是1 如果题目输入的是1到n 请预处理减1 * ...