再見了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我永遠的神
他的博客地址:http://oldblog.antirez.com/post/redis-as-LRU-cache.html 包括上面的英語傷痛15年也是有的,他是意大利人嘛,因此英文的博客不是那麼多,不過他最近更新的大部分都是英文的了。
是否是發現這我的仍是有意思,由於不爽一個廣告女郎,就把人家作成了端口名。
再見了Antirez我永遠的神
最後跟隨谷歌以及程序羊的翻譯跟我再一次回顧,Antirez的退役文吧,這個四十歲的老兵,這麼多年孜孜不倦地寫代碼,爲 Redis 的開源事業持續貢獻本身的力量:
antirez在退役文中說到:他最激動人心的時刻就是十年前項目剛剛開始的時刻,Redis 的聯合創始人和我啓動了兩個重要的意大利互聯網 web 2.0 項目,爲了持續擴容服務,咱們創造了不少新概念,這些概念其實已經在技術領域流行不少年了,可是在當時咱們並不瞭解也未曾驗證過是否可行,不過不要緊,咱們喜歡解決問題,並從中發現不少樂趣,Redis 剛剛誕生的時候真的是很是有意思的(讓人難忘的)。
可是現在 Redis 不同了,它難以置信的在很是很是多的項目中扮演者相當重要的角色。通過了這麼多年的打磨,個人工做性質也發生了變化。我不僅是要讓它變動加有用(更多新鮮的功能),還要讓它儘量的穩定(少出 bug)。
尤爲最近這幾年,個人工做內容變化太大了,我主要的精力都花在了 Redis 代碼的維護上,主要就是看看其它的開發者告訴我關於 Redis 的代碼該如何改進才能讓它變的更快更好。其實我根本就不想作一個軟件維護者(修 bug、優化代碼的工做實在太無聊了)。
我寫代碼是爲了更好的表達自我,這是藝術創做(樂趣),而不僅僅是爲了把事情搞定(掙錢)。
個人目標更多的是爲了追求美感,而最終能不能起到做用僅僅是附帶的結果而已。我寧肯你們認爲我是一個糟糕的藝術家,也不但願只被當作一個優秀的程序員。
可是如今我被要求這要求那,就由於這個項目變得如此重要。我不能隨意表達本身(藝術創做,大刀闊斧的改代碼),而只能在現有的代碼基礎上維護(小打小鬧)。
我並非說這樣不對,這只是現階段的 Redis 必需要接受的方式。可是我我的有點受不了,最近幾年我感到很憋屈(Linus 也會是這種感受麼?)。
因此呢,社區裏面的同志們啊,我告訴大家我要退居幕後了。我將來只是做爲 Redis 的顧問來給 Redis 實驗室提供一些新奇的想法(維護 Redis 代碼我就不幹了)。
如此呢,我就能夠把本身釋放出來作點其它的事。至於作什麼尚未想好,會不會繼續寫代碼也不肯定。我比較懷疑本身是否可以徹底放棄寫代碼,只是由於寫代碼實在是太好玩了(此處有個調皮的表情)。
從今天開始,我要把 Redis 留給了 Redis 社區,讓個人老戰友 Yossi Gottlieb 和 Oran Agra 來繼續維護它。
這兩我的在過去這幾年對我幫助很是大,在關於 Redis 願景(將來)的理解上,他們並不會被我我的的主觀想法所左右。由於我不太想參與 Redis 開發模型的治理工做(這是 Redis 維護工做中最重要的元工做,而我不是想繼續搞維護了),因此後面跟其它 Redis 開發者交流「可持續的開發模型」一事就徹底託付給他們兩了,大家能夠從這邊文章 https://redislabs.com/blog/new-governance-for-redis/ 中直接瞭解這個事。
我相信我不僅是把 Redis 留給了社區裏的一堆專家級程序員,還應該包括社區中全部對 Redis 精神遺產感興趣的朋友們。
十一年來,我但願讓你們看到開發軟件還有這樣的一種特別的方式(個人方式),這種方式只有個別人能夠理解。我但願在 Redis 將來的變化中,這種方式仍是能夠繼續被適度採用。(是否是 antirez 獨裁(不可持續)的方式和 他老戰友的「可持續開發模型」衝突了,鬧的很不愉快,不是很肯定)。
Redis 是我職業生涯中壓力最大的項目,可能也是最重要的項目。
最近這些年編程世界的變化我並非特別喜歡(不知道說的是哪方面的變化),雖然這段旅程很是艱辛,可以有機會和不少特別的人一塊兒工做交流也讓我感受很是滿足。
謝謝大家的理解和幫助,這讓我成長了不少,我須要特別感謝無私贊助個人公司和我的讓我能夠持續這麼多年持續天天爲開源世界共享代碼,讓我能夠自由地作本身認爲是正確的事。還有 Redis Labs、VMWare 和 Pivotal,很是感謝大家的幫助和寬容(是否是 antirez 摸魚了)。
前面說到,除了繼續 Redis 的顧問工做以外,我也不知道將來的路該怎麼走。也許走一步看一步也挺好,不用幹太多事。我還想發展一下我的的一些興趣愛好,好比寫寫博客就挺好,之前我一直想寫可是一直沒有太多時間。
最近我還發了一些意大利語的技術視頻,這很好玩,還收到了讀者大量的反饋,我將來應該還會發更多的視頻。大家大概也知道個人 Twitter 帳號 @antirez 一直很活躍 ,若是大家還對我這樣一個又老又怪的程序員感興趣,那就去 Twitter 上圍觀我吧。
再見了Antirez我永遠的神
最後用antirez的一句話收尾吧:
咱們以優化代碼爲樂,咱們相信編碼是一件辛苦的工做,惟一對得起這辛苦的就是去享受它,若是咱們在編碼中失去了樂趣,那最好的解決辦法就是停下來,咱們決不會選擇讓Redis很差玩的開發模式。
respect
我是敖丙,你知道的越多,你不知道的越多,咱們下期見!html

相關文章
相關標籤/搜索