数据结构|再见了Antirez我永远的神

其实antirez(Redis作者)退出Redis维护的消息一发布我就在很多咨询网站上面看到了,当时也没太多感慨。
今天比较有空想去看看霉霉Twitter的,然后看到了关注列表的antirez,我就又一次回顾了他的退役声明。
 数据结构|再见了Antirez我永远的神
文章图片
我想这个Redis之父肯定没想到,自己和小伙伴启动的项目,在10年后的今天,会对这个互联网时代产生这么大的影响吧,说Redis加速了互联网公司的发展也不为过。
其实很多开源项目都是作者一个无意间的初衷启动的,然后不经意间做到了各个领域的世界第一,比如Linux,Nginx等等,都是小小的体积蕴含着大大的能量。
我之前所在的团队是做电商活动的,可以说Redis就是我接触最多的中间件,所以我文章最开始也是以Redis作为系列的开篇,对它的感情也可以说比正常程序员都要独特,他的各种使用场景,高级用法我几乎接触了一个遍,在很长一段时间也成为我面试的杀手锏,我研读过Redis很多功能的源码,不得不说这个团队真的把性能的优化做到了极致,用最短的代码,做到了最大的性能优化。
如果不是技术的同学可能不是很明白,这么说吧,大家进任何网页第一眼能看到的东西,大部分都是跟缓存息息相关的,或者也是利用了缓存这样的概念,一旦缓存挂了,那所有的网站可能会天天都会发生微博宕机那样的事故,所有人都无法正常访问网站,大量的流量会瞬间击垮服务器。
在Redis中,数据结构这个词的意义不仅表示在某种数据结构上的操作,更包括了结构本身及这些操作的时间空间复杂度。
Redis 定位是一个内存数据库,正是由于内存的快速访问特性,才使得Redis能够有如此高的性能,才使得Redis能够轻松处理大量复杂的数据结构,Redis会尝试其它的存储方面的选择,但是永远不会改变它是一个内存数据库的角色。
Redis 有着诗一般优美的代码,经常有一些不太了解Redis 原则的人会建议Redis采用一些其它人的代码,以实现一些Redis 未实现的功能,但这对研发团队来说来说就像是非要给《红楼梦》接上后四十回一样。
Redis的深度用户都知道,缓存只是他最简单和基础的功能罢了,哨兵,集群,分布式锁,延时队列,位图,HyperLogLog,布隆过滤器,限流,GeoHash(附近的人)等等,眼花缭乱的类型和使用姿势多得不行。
这里面大部分的东西在antirez维护Redis的早期就诞生了,是不是对他的敬佩又多了一分。
antirez这样的大神能坚持这么多年,我想枯燥是必然的,但是如果你跟我一样关注他的Twitter你会发现,这个人是真的热爱这项事业。
 数据结构|再见了Antirez我永远的神
文章图片
他几乎没有一条生活相关的推特,最多偶尔晒一下论坛和技术大牛的合照,或者偶尔。。。开开车,我发现我们程序员都喜欢开车哈哈哈,不知道为啥敲到这里的时候,我的嘴角微微的上扬了。
你说他枯燥吧他枯燥,不过他也很有趣,我问大家一个问题:大家知道Redis端口为啥是6379么?
Antirez出生在非英语系国家,英语能力长期以来是一个短板,他曾经专门为自己蹩脚的英语能力写过一篇博文《英语伤痛 15 年》,用自己的成长经历来鼓励那些非英语系的技术开发者们努力攻克英语难关。
 数据结构|再见了Antirez我永远的神
文章图片
我们都知道 Redis 的默认端口是 6379,这个端口号也不是随机选的,而是由手机键盘字母「MERZ」的位置决定的。
「MERZ」在 Antirez 的朋友圈语言中是「愚蠢」的代名词,它源于意大利广告女郎「Alessia Merz」在电视节目上说了一堆愚蠢的话。
 数据结构|再见了Antirez我永远的神
文章图片
他的博客地址:https://oldblog.antirez.com/post/redis-as-LRU-cache.html 包括上面的英语伤痛15年也是有的,他是意大利人嘛,所以英文的博客不是那么多,不过他最近更新的大部分都是英文的了。
是不是发现这个人还是有意思,因为不爽一个广告女郎,就把人家做成了端口名。
 数据结构|再见了Antirez我永远的神
文章图片
最后跟随谷歌以及程序羊的翻译跟我再一次回顾,Antirez的退役文吧,这个四十岁的老兵,这么多年孜孜不倦地写代码,为 Redis 的开源事业持续贡献自己的力量:
antirez在退役文中说到:他最激动人心的时刻就是十年前项目刚刚开始的时刻,Redis 的联合创始人和我启动了两个重要的意大利互联网 web 2.0 项目,为了持续扩容服务,我们创造了很多新概念,这些概念其实已经在技术领域流行很多年了,但是在当时我们并不了解也不曾验证过是否可行,不过没关系,我们喜欢解决问题,并从中发现很多乐趣,Redis 刚刚诞生的时候真的是非常有意思的(让人难忘的)。
但是如今 Redis 不一样了,它难以置信的在非常非常多的项目中扮演者至关重要的角色。经过了这么多年的打磨,我的工作性质也发生了变化。我不只是要让它变更加有用(更多新鲜的功能),还要让它尽可能的稳定(少出 bug)。


推荐阅读