未加星标

为什么要选择使用 Redis?

字体大小 | |
[数据库(综合) 所属分类 数据库(综合) | 发布者 店小二05 | 时间 2017 | 作者 红领巾 ] 0人收藏点击收藏

之前空非易博客谈过Redis 的诞生,世界上有无数种数据库,我们为什么要选择使用 Redis 呢?它有什么好处和优点?本文将讨论这个话题。

独特的键值对模型

很多数据库只能处理一种数据结构:

SQL 数据库 ―― 表格 Memcached ―― 键值对,键和值都是字符串 文档数据库(CouchDB、MongoDB)―― 由 JSON/BSON 组成的文档

而一旦数据提供的数据结构不适合去做某件事的话,程序写起来就会非常地麻烦和不自然。


为什么要选择使用 Redis?

Redis 也是键值对数据库,但和 Memcached 不同的是,Redis 的值不仅可以是字符串,它还可以是其他五种数据结构中的任意一种。通过选用不同的数据结构(如上图),用户可以使用 Redis 解决各式各样的问题。随着 Redis 的发展,将来它将支持更多类型的数据结构,成为更大的平台。

内存储存,速度极快

按存储方式,数据库的工作模式,分为硬盘数据库和内存数据库。Redis 将数据储存在内存里面,读写数据的时候都不会受到硬盘 I/O 速度的限制,所以速度极快。


为什么要选择使用 Redis?
为什么要选择使用 Redis?
丰富的附加功能 持久化:将储存在内存里面的数据保存到硬盘里面,保障数据安全,方便进行数据备份和恢复。 发布与订阅:将消息同时分发给多个客户端,可用于构建广播系统。 过期键:为键设置一个过期时间,让它在指定的时间之后自动被删除。 事务:原子地执行多个操作,并提供乐观锁功能,保证处理数据时的安全性。 脚本:在服务器端原子地执行多个操作,完成复杂的功能,并减少客户端与服务器之间的的通信往返次数。 复制:为指定的 Redis 服务器创建一个或多个复制品,用于提升数据安全性,并分担读请求的负担。 Sentinel:即 Redis 哨兵,监控 Redis 服务器的状态,并在服务器发生故障时,进行自动故障转移。 集群:创建分布式数据库,每个服务器分别执行一个部分写操作和读操作。 完善的文档

Redis 具有完善、易读的 文档 ,加上 Redis 本身功能的简单性,就算新手也可以轻松上手。

良好的支持

Redis 作者非常勤奋,在每个版本都会不断地增加有用的新功能。Bug 一旦出现就会很快被修复,齐全的测试套件以及稳扎稳打的开发策略,使得 Redis 非常健壮可靠。

有问题时,在 Redis 的论坛上发贴,或者到 Redis 的Github 页面发 issue,又或者直接和作者 Antirez 联系,通常都可以很快得到回应。

Pivotal 公司雇用 Antirez 全力开发 Redis,无后顾之忧,这个公司也提供专门的 Redis 开发和维护咨询服务。阿里云、百度云、Amazon、RedisLab 等公司都提供了基于 Redis 的应用服务。

广泛的使用 Twitter 使用 Redis 储存用户时间线。 StackOverflow 使用Redis 进行缓存和消息分发。 Pinterest 使用 Redis 构建关注模型(follow model)和兴趣图谱(interest graph)。 Flickr 使用 Redis 构建队列。 Github 使用 Redis 作为持久化的键值对数据库,并使用其构建消息队列。 新浪微博使用 Redis 实现计数器、反向索引、排行榜、消息队列和存储用户关系。 知乎使用 Redis 进行计数、缓存、消息分发和任务调度

关于 Redis 的特色介绍完毕。

来源:空非易,QQ:1437 5907

本文数据库(综合)相关术语:系统安全软件

tags: Redis,数据库,键值,数据结构,文档,内存,数据,储存,硬盘,构建,队列,空非,Memcached
分页:12
转载请注明
本文标题:为什么要选择使用 Redis?
本站链接:http://www.codesec.net/view/520622.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 数据库(综合) | 评论(0) | 阅读(147)