Redis---1、介绍
Redis简介:
是以key-value形式存储,和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求。
优点:
- 对数据高并发读写
- 对海量数据的高效率存储和访问
- 对数据的可扩展性和高可用行
缺点:
- redis(ACID)处理非常简单
- 无法做到太复杂的关系数据库模型
Redis 是以key-value store存储,data structure service 数据结构服务器,键可以包含:(string)字符串、哈希、链表(list)、(set)集合。(Zset)有序集合。这些数据结合都支持pysh/pop、add/remove
及取交集和并集以及更丰富的操作,redis支持各种不同方式排序,为了保证效率,数据丢失缓存在内存中,它也可以周期性的把更新数据写入磁盘后者把修改操作写入追加到文件。
除了上述的5种数据结构,Redis还提供了许多额外的功能:
- 提供了键过期功能,可以用来实现缓存
- 提供了发布订阅功能,可以用来实现消息系统
- 支持Lua脚本功能,可以利用Lua创造出新的redis命令
- 提供简单的事务功能,能再一定程度上办证事务特性
- 提供了流水线(pipeline)功能,这样客户端能将一批命令一次性传到redis,减少了网络的开销
Redis速度快的原因:
- redis把所有数据都是存放在内存中的
- redis是用C语言实现的,一般来说C语言实现的程序"距离"操作系统最近,执行速度相对更快
- Redis使用了单线程架构,预防了多线程可能产生的竞争问题
Redis 的持久化:
redis提供两种持久化方式:RDB和AOF,即可以用两种策略将内存的数据保存在硬盘中,这样就保证了数据的可持久性。
高可用:
Redis从2.8 版本正式提供了高可用实现Redis Sentinel,它能够保证Redis节点的故障发现和 故障自动转移。Redis从3.0 版本正式提出了分布式Redis Cluster ,它是Redis真正的分布式实现,提供了高可用、读写和容量的扩展性。
redis有3种高可用:
1.主从
2.哨兵
Redis sentinel是一个分布式系统中监控redis主从服务器,并在主服务器下线时自动进行故障转移。其中有3个特性:
监控(Monitoring): Sentinel会不断地检查你的主服务器和从服务器是否运作正常。
提醒(Notification):当被监控的某个Redis服务器出现问题时,Sentinel可以通过API向管理员或者其他应用程序发送通知。
自动故障转移(Automatic failover):当一个主服务器不能正常工作时,Sentinel会开始一次自动故障转移操作。
3 集群
Redis---1、介绍的更多相关文章
- [转] Redis系统性介绍
Redis系统性介绍 http://blog.nosqlfan.com/html/3139.html?ref=rediszt 虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了 ...
- Redis安装介绍
Redis安装介绍 一.Linux版本及配置 1. Linux版本:Red Hat Enterprise Linux 6虚拟机 2. 配置: 内存:1G:CPU:1核:硬盘:20G 二.Redis ...
- Redis全面介绍
最近重新认识了一下Redis,借着这个机会,也整理一篇算是比较详尽和全面的文章吧. 缓存 缓存就是数据交换的缓冲区(称作Cache)——摘自百度百科.无论是在计算机硬件体系结构还是软件体系结构中, ...
- NoSQL数据库之Redis数据库:Redis的介绍与安装部署
NoSQL(NoSQL = Not Only SQL),它指的是非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的w ...
- 4 Redis 配置文件介绍
2016-12-22 14:28:39 该系列文章链接NoSQL 数据库简介Redis的安装及及一些杂项基础知识Redis 的常用五大数据类型(key,string,hash,list,set,zse ...
- 第五章· Redis主从复制介绍
一.Redis主从复制 二.Redis主从复制工作机制 一.Redis主从复制 Redis复制功能简单介绍 1)使用异步复制.2)一个主服务器可以有多个从服务器.3)从服务器也可以有自己的从服务器.4 ...
- redis cluster介绍
讲解分布式数据存储的核心算法,数据分布的算法 hash算法 -> 一致性hash算法(memcached) -> redis cluster,hash slot算法 一.概述 1.我们的m ...
- Python 基于python操纵redis入门介绍
基于python操纵redis入门介绍 by:授客 QQ:1033553122 测试环境 redis-3.0.7 CentOS 6.5-x86_64 python 3.3.2 基于Python操作R ...
- Python redis 简单介绍
Python redis 简单介绍 1.安装 终端输入: pip(or)pip3.6 install redis 安装成功 2.哈哈,发现我并没有redis服务可以访问,所以到这里,在本机安装了red ...
- Redis数据库介绍
引言 redis是一个开源的.使用C语言编写的.支持网络交互的.可基于内存也可持久化的Key-Value数据库. redis数据结构 redis是一种高级的key:value存储系统,其中value支 ...
随机推荐
- 图解JVM内存分配和回收
一.简介 JVM采用分代垃圾回收.在JVM的内存空间中把堆空间分为年老代和年轻代.将大量(据说是90%以上)创建了没多久就会消亡的对象存储在年轻代,而年老代中存放生命周期长久的实例对象.年轻代中又被分 ...
- Vim 中的持久撤消
Vim中的持久撤消 阅读文本大约需要俩分钟. 在 Vim 中像其他文本编辑器一样,你可以在当前会话中执行 "撤销/重做" .当一旦会话关闭,则你需要重新打开一个新文章,运行撤销将不 ...
- Jmeter Plugins----- Transactions per Second 配置项
Jmeter Plugins---version 0.5.5 官方解释: Transactions per Second since 0.3.0 This graph shows the number ...
- 符合Python风格的对象
array和bytes的转换 - 每个array必须有一个type_code,以此为依据解析底层字节序列 - array有一个frombytes方法,可以把字节序列按type_code转换成Array ...
- C#-集合及特殊集合——★★哈希表集合★★
集合的基本信息: System.Collections命名空间包含接口和类,这些接口和类定义各种对象(如列表.队列.位组数.哈希表和字典)的集合. System.Collections.Generic ...
- QuantLib 金融计算——随机过程之一般 Black Scholes 过程
目录 QuantLib 金融计算--随机过程之一般 Black Scholes 过程 一般 Black Scholes 过程 如果未做特别说明,文中的程序都是 Python3 代码. QuantLib ...
- JS实现表格列宽拖动
在数据表格中,有时候需要拖动表格宽度,查看完整的数据,是很常用的功能. 1 效果 可以用纯JS就可以实现,如下,是正常情况下的表格: 拖动表格标题中间线,拖动后效果如下: 查看DEMO 2 代码 HT ...
- E - Guess the Root 拉格朗日差值法+交互
题目传送门 题意:告诉你存在一个未知项系数最高为10的$f(x)$,你最多可以有50次询问,每次询问给出一个$x'$,系统会返回你$f(x')$的值,你需要猜一个$x''$,使得$f(x'')=0$, ...
- 使用mint-ui的 InfiniteScroll 做数据分页请求
1.首先 npm install mint-ui 2.在main.js引用 import { InfiniteScroll } from 'mint-ui'; Vue.use(InfiniteScro ...
- jedis 整合 Spring
一, 单机版整合spring 1. 使用默认配置文件进行配置 <bean id="redisClient" class="redis.clients.jedis ...