<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          被噴了?聊聊我開源RPC框架的那些事

          共 2605字,需瀏覽 6分鐘

           ·

          2020-09-13 12:40

          前段時間利用業(yè)余時間寫了一個簡單的 RPC 框架,花費了不少精力。開源出來之后,少部分不太友好的技術人站在上帝視角說了風涼話。就很難受,兄弟,誰還沒有一個玻璃心。

          簡單吐槽一波,給大家聊聊關于 guide-rpc-framework[1] 的一些事情。

          我踏馬直接踢

          01 我的自定義 RPC 框架近況

          關注我的大部分小伙伴應該都知道,3 個月前,我利用業(yè)余時間手寫一個簡單的 RPC 框架(玩具),名字叫做 guide-rpc-framework。

          目前的話,這個項目已經(jīng)有 0.5k 的 star。感謝小伙伴們的支持!

          寫這個 RPC 框架的主要目的是為了個人學習,開源出來的目的主要是想幫助到更多人。有很多小伙伴找到了大廠 offer 之后,專門回來感謝我開源的這個 RPC 框架

          02 開源的魅力

          開源出來之后,大部小伙伴都是比較支持的,有很多小伙伴都參與了進來一起完善。

          這里點名表揚一下 Github 用戶名為 sakuragi1111[2]smile2coder[3] 這兩位老哥。

          sakuragi1111 這位老哥通過參考 Dubbo 源碼實現(xiàn)了 SPI 機制。

          smile2coder 這位老哥為 guide-rpc-framework 添加了通過注解實現(xiàn)服務消費的功能。

          目前的話, guide-rpc-framework 已經(jīng)支持通過注解進行服務消費和注冊。

          程序世界,什么樣的人都有,有人感謝你,也會有人貶低你。

          03 不那么好的聲音

          在我的 guide-rpc-framework 開源之后,也經(jīng)常會受到像:“你有本事別用現(xiàn)成的框架寫一個啊?”、“你這個寫的一點亮點都沒有,有啥意思?”、“都有了 Dubbo 之后,為啥還要自己寫一個?”、“重復造輪子沒意義”......之類的不太友善的話語。

          說句心里話,一般說出來這種話的人往往技術水平很低。

          如果,你指出我哪里寫的不好,我很樂意地去修改。但是,你站在上帝視角說著風涼話,那就是人品有問題了。

          1.為什么不能利用現(xiàn)成的框架呢?(比如為啥不用 JDK NIO 而用 Netty?)

          毫不夸張地說:開源出來的東西,就是全體技術人共同的財富。

          Netty 比 NIO 更好用、更完善,我為啥還要直接使用 NIO 呢?我們平常經(jīng)常接觸的 Dubbo、RocketMQ、Elasticsearch、gRPC 等等都用到了 Netty 啊。

          2.你這個寫的一點亮點都沒有,有啥意思?

          有能耐的話,你也可以自己寫一個。說出此類的話的人,往往是嫉妒心理比較嚴重或者自身水平不行但是比較驕傲的人。而且,RPC 框架本身就已經(jīng)有很多比較成熟的例子了比如 Dubbo。說實話,Dubbo 基本是已經(jīng)把 RPC 框架能考慮到的點都考慮到了。

          我不信你一個人,能干過人家一個團隊好多年的成果。

          3.都有了 Dubbo 之后,為啥還要自己寫一個?

          一定要學會看 README!!!

          我在項目的 README 中明確說明了:寫這個 RPC 框架主要是為了通過造輪子的方式來學習,檢驗自己對于自己所掌握的知識的運用。

          4.重復造輪子沒意義

          我們實際項目開發(fā)中是比較忌諱造輪子的,但是,實際學習過程中造輪子絕對是最自己百利而無一害的!

          我的 RPC 框架肯定是無法和 Dubbo 這類已經(jīng)這么成熟的相提并論。但是,在自己去寫 RPC 框架的時候,更加加深了自己對于 RPC 框架的認識。實現(xiàn)的過程中,遇到了很多問題,解決問題的過程中也提高了自己的編程能力。總而言之,造輪子是一種特別能夠提高自己系統(tǒng)編程能力的手段。

          04 擁抱開源

          開源絕對是編程領域最美妙的事情之一,大幅提高了我們的生產(chǎn)力。

          沒事就去開源社區(qū)比如 Github 或者 Gitee 逛逛,在這里你可以 get 到各種好東西。

          你可以在 Github 分享很多東西,你的學習筆記、自己做的實戰(zhàn)項目、自己造的輪子......(資源類的不太推薦,太容易侵權)。

          雖然,現(xiàn)在 Github 被很多人單純玩成了引流工具。但是,整體來說 Github 整體技術環(huán)境和氛圍還是很不錯的!

          另外,最好的話是要給項目弄一個英文版本,項目代碼中的注釋最好也要是英文的。畢竟是開源,最好是能遵守開源精神使用世界通用語言(這一點我自己也沒做好,反思!)。

          如果你想讓自己的開源項目被更多人知道的話,你可以在下面技術平臺宣傳(不宣傳的話,開源的東西很難被別人知道,不要讓好東西被埋沒):

          05 最后

          技術人千萬不要站在上帝視角批判,不要成為大家都討厭的那批人。

          參考資料

          [1]

          guide-rpc-framework: https://github.com/Snailclimb/guide-rpc-framework

          [2]

          sakuragi1111: https://github.com/sakuragi1111

          [3]

          smile2coder: https://github.com/smile2coder

          06 閑聊

          昨天的華為開發(fā)者大會讓多少人的臉被打的啪啪啪響啊!

          之前,我也不看好鴻蒙生態(tài),畢竟這東西哪里像寫個APP那樣簡單。但是,到了現(xiàn)在,你仔細看看華為面對美國制裁的表現(xiàn),你看看大部分中國人民是不是逐漸越來越有信心。

          就我作為華為忠實來用戶來說:“你可以不愛,但不要惡意傷害,即使最終的結(jié)果可能會失敗”。我最最最討厭別人站在上帝視角說話、無腦批判,就像我今天這篇文章表達的主題一樣。做一個善良的人吧!

          我整理的4本PDF文檔,公眾號“后端技術進階”后臺回復“面試突擊”即可免費獲取。

          文章有幫助可以點個「在看」或「分享」,都是支持,我都喜歡!

          我是Guide哥,Java后端開發(fā),會一點前端知識,喜歡烹飪,自由的少年。一個三觀比主角還正的技術人。我們下期再見!


          往期推薦



          工作中巧用了這幾個設計模式重構代碼,女同事直呼666

          我在螞蟻外包的這段時光

          6k+點贊的SpringBoot+Netty分布式即時通訊系統(tǒng)!愛了愛了!

          和一位阿里的小姐姐聊了聊“面試造火箭,工作擰螺絲釘”這個現(xiàn)象

          好一個 Spring Boot 開源在線考試系統(tǒng)!解決了我的燃眉之急

          瀏覽 59
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  美欧毛片| 亚洲国产A片 | 哪里可以看AV片 | 天天躁夜夜躁狠狠躁av麻豆男男 | 中文字幕一区免费 |