Redis的诞生历程
从一个故事开始
08 年的时候有一个意大利西西里岛的小伙子,笔名antirez(http://invece.org/),创建了一个访客信息网站LLOOGG.COM。有的时候我们需要知道网站的访问情况,比如访客的IP、操作系统、浏览器、使用的搜索关键词、所在地区、访问的网页地址等等。在国内,有很多网站提供了这个功能,比如CNZZ,百度统计,国外也有谷歌的GoogleAnalytics。我们不用自己写代码去实现这个功能,只需要在全局的footer 里面嵌入一段JS 代码就行了,当页面被访问的时候,就会自动把访客的信息发送到这些网站统计的服
务器,然后我们登录后台就可以查看数据了。
LLOOGG.COM 提供的就是这种功能,它可以查看最多10000 条的最新浏览记录。
这样的话,它需要为每一个网站创建一个列表(List),不同网站的访问记录进入到不同的列表。如果列表的长度超过了用户指定的长度,它需要把最早的记录删除(先进先出)。
当LLOOGG.COM 的用户越来越多的时候,它需要维护的列表数量也越来越多,这种记录最新的请求和删除最早的请求的操作也越来越多。LLOOGG.COM 最初使用的数据库是MySQL,可想而知,因为每一次记录和删除都要读写磁盘,因为数据量和并发量
太大,在这种情况下无论怎么去优化数据库都不管用了。
考虑到最终限制数据库性能的瓶颈在于磁盘,所以antirez 打算放弃磁盘,自己去实现一个具有列表结构的数据库的原型,把数据放在内存而不是磁盘,这样可以大大地提升列表的push 和pop 的效率。antirez 发现这种思路确实能解决这个问题,所以用C 语言重写了这个内存数据库,并且加上了持久化的功能,09 年,Redis 横空出世了。从最开始只支持列表的数据库,到现在支持多种数据类型,并且提供了一系列的高级特性,Redis 已经成为一个在全世界被广泛使用的开源项目。
为什么叫REDIS 呢?它的全称是REmote DIctionary Service,直接翻译过来是远程字典服务。
从Redis 的诞生历史我们看到了,在某些场景中,关系型数据库并不适合用来存储我们的Web 应用的数据。那么,关系型数据库和非关系型数据库,或者说SQL 和NoSQL,到底有什么不一样呢?
Redis的诞生历程相关推荐
- 《悟透JavaScript》诞生历程精美配乐视频
http://www.tudou.com/programs/view/FvU5NoPoKC8/ 这里没法播,只能先换个形式吧: 我是怎样诞生的? 这样的吗? 话说:一位超级喜欢的在写了 引来一阵惊呼 ...
- 用最少的机器支撑万亿级访问,微博6年Redis优化历程
https://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=2653547263&idx=1&sn=fe484b24660b7e ...
- 数据库历险记(二) | Redis 和 Mecached 到底哪个好?
文章首发于微信公众号「陈树义」,专注于 Java 技术分享的社区.点击链接扫描二维码,与500位小伙伴一起共同进步.微信公众号二维码 http://p3npq6ecr.bkt.clouddn.com/ ...
- redis学习笔记,常用方法
Redis-day01-note Redis介绍 特点及优点 1.开源的,使用C编写,基于内存且支持持久化 2.高性能的Key-Value的NoSQL数据库 3.支持数据类型丰富,字符串strings ...
- JAVA知识体系之分布式篇(七)——Redis
1.Redis概述 1.1 Redis诞生历程 Redis的作者笔名叫antirez,2008年的时候他做了一个记录网站访问情况的系统,比如每天有多少个用户,多少个页面被浏览,访客的IP.操作系统 ...
- Redis 入门与数据结构
1.redis 诞生历程 08 年的时候有一个意大利西西里岛的小伙子,笔名 antirez(http://invece.org/),创建了一个访客信息网站 LLOOGG.COM.有的时候我们需要知道网 ...
- 【起】Redis 概述篇——带你走过 Redis 的前世今生
前言 距离过年那会闲在家更新的 MySQL 系列已经过去一段时间了,这段时间一直在忙其他的,所以博客的更新也就搁置了,但是一直在想着要更新啥内容比较好,刚好朋友给了我一本 Redis 的书籍,我就打算 ...
- Redis学习(一)基础篇
目录 1.Redis诞生历程 2.SQL 与 NoSQL 3.Redis特性 4.Redis 安装启动 4.1 下载 4.2 启动 4.3 客户端工具 5.基本操作 5.1Redis的连接 5.2 R ...
- 超全,超详细的Redis基础,你掌握了多少?
Redis 入门 Redis 诞生历程 从一个故事开始 08年的时候有一个意大利西西里岛的小伙子,笔名antirez(http://invece.org/),创建 了一个访客信息网站LLOOGG.CO ...
最新文章
- 神经网络结构优化:这篇论文让你无惧梯度消失或爆炸,轻松训练万层神经网络...
- 保研计算机英语词汇,实用英语口语:“保研”怎么说?
- JavaWeb课程复习资料(二)——idea创建JDBC(FactoryDB)
- 双十一囤点知识干货!
- postgresql 删除触发器_postgresql 触发器
- WMS仓储系统在管理中产生的盈利
- 在英特尔® 架构平台上开发和优化基于 NDK 的 Android 游戏应用
- java.servlet js,调用servlet方法
- 吴恩达神经网络和深度学习-学习笔记-44-anchor box
- c语言程序改错:求两个整数的最小公倍数,【C语言】求两个整数的最大公约数、最小公倍数...
- DPDK示例l3fwd性能测试
- 用 js判断 一个数是否是素数(质数)_js 基础算法题(二)
- 你必须掌握的人生定律
- canvas绘制动态图片
- Python替换月份为英文缩写
- 大数据征信成撬动消费金融的支点?
- 使用ip地址计算子网掩码的方法
- SVN服务端的搭建和简单使用
- 【那些年我们一起看过的论文】之《Real-Time Loop Closure in 2D LIDAR SLAM》
- sql where条件添加判断 case when... then..else..end,示例说明