1024 程式員節,圓一個小小的夢

来源:https://www.cnblogs.com/makemylife/archive/2023/10/24/17783845.html
-Advertisement-
Play Games

Hope is a good thing, maybe the best of things, and no good thing ever dies. 希望是件美麗的東西,也許是最好的東西,而美好的東西是永遠不會消逝的。 大家好,我是勇哥 。 1024 , 程式員節,圓了我一個小小的夢。 花了半年 ...


Hope is a good thing, maybe the best of things, and no good thing ever dies.

希望是件美麗的東西,也許是最好的東西,而美好的東西是永遠不會消逝的。

大家好,我是勇哥 。

1024 , 程式員節,圓了我一個小小的夢。

花了半年時間,我寫了一本電子書 ,書名是:《RocketMQ4.X設計精要》,我想在今天分享給各位。

這本書一共包含十五章,接近 10 萬字,180 張圖,按照 RocketMQ 的知識體系一章一章展開。

很多年前,一位七牛的資深架構師曾經說過這樣一句話:

Nginx+ 業務邏輯層 + 資料庫 + 緩存層 + 消息隊列 ,這種模型幾乎能適配絕大部分的業務場景 。

這麼多年過去了,這句話或深或淺地影響了我的技術選擇,以至於後來我花了很多時間去重點學習緩存、消息隊列相關的技術。

2014年,是我和 RocketMQ 結緣的一年。

我那時服務於藝龍旅行網,深感自己能力的欠缺,我非常想學習消息隊列的知識,但當時互聯網上開源的消息隊列並不能讓我滿意。

讀了子柳老師的《淘寶技術這十年》後,我搜羅了很多淘寶消息隊列的資料,我知道MetaQ 的版本已經升級 MetaQ 3.0,只是開源版本還沒有放出來。

2014 年秋 ,當 RocketMQ 開源出來之後 ,我興奮異常,迫不及待的一睹其風采,至今我都能記得當時內心的雀躍。

我想學網路編程,RocketMQ 的通訊模塊 remoting 底層也是 Netty 寫的。我學習切入點是 RocketMQ 的通訊模塊。

首先我模仿 RocketMQ 的通訊模塊寫了一個玩具的rpc,在 IDEA 中絲滑列印生產者/消費者的日誌,感覺自己充滿了能量。

不久之後,藝龍舉辦技術創新活動,我想想,要不嘗試一下用 Netty 改寫下 Cobar 的通訊模塊。

於是參考 Cobar 的源碼花了兩周寫了個 netty 版的 proxy,其實非常粗糙,很多功能不完善。只是沒有想到,活動頒給我一個鼓勵獎,現在想想既有趣又有點激勵。

這就是我學習 RocketMQ 的起點,一個非常美好的起點。

在接下來的職業生涯中 ,我不斷在業務中使用 RocketMQ :

  1. 直播答題:RocketMQ 廣播模式推送題目 ;
  2. 參考阿裡雲 ONS 封裝 RocketMQ 框架 ;
  3. 使用 RocketMQ 通訊框架實現任務調度系統 ;
  4. 使用 RocketMQ 作為簡訊平臺的基座 ;
  5. 重構 RocketMQ 控制台支持多集群 。

通過 RocketMQ ,我學習到了很多的編程知識,比如多線程技巧、網路編程 、文件存儲,同時面對各種技術問題處理起來也更加從容和自信。

緩存、分庫分表、消息隊列是高併發解決方案三劍客,是架構師必須掌握的知識點。

我寫這本電子書,是想幫助後端工程師快速掌握 RocketMQ 的相關知識點,提升他們的技術認知。

假如朋友們能通過這本電子書,快速成長,那將是一件令我非常快樂的事情。

因為我自己的能力有限,書中肯定存在紕漏和錯誤之處,歡迎溝通指正,非常感謝 :)

微信搜索「勇哥java實戰分享」關註後,在後臺回覆「mq」即可獲取《RocketMQ 4.X 設計精要》pdf 。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1. 增長 1.1. 在高速的業務環境中,流量可能逐年增長幾個數量級,環境會變得更加複雜,隨之而來的數據需求也會快速增加 1.2. 擴展Web伺服器 1.2.1. 在負載均衡的後端添加更多的伺服器節點,而這通常就是擴展We b伺服器的全部工作 2. 可擴展性 2.1. 系統支撐不斷增長的流量的能力 ...
  • 更多技術交流、求職機會,歡迎關註位元組跳動數據平臺微信公眾號,回覆【1】進入官方交流群 近年來,隨著消費者的心理需求逐步趨向於精神層面、科技的迭代迅速以及市場環境的複雜性逐步上升,我國的廣告行業逐步展開新的投放模式。但流量成本高,企業試錯成本高昂,如何在控製成本的同時實現廣告投放效益最大化,成為廣告投 ...
  • HDFS文件系統基本信息 HDFS作為分散式存儲的文件系統,有其對數據的路徑表達方式。 HDFS同Linux系統一樣,均是以/作為根目錄的組織形式 Linux: /usr/local/hello.txt HDFS: /usr/local/hello.txt 命令行 # 老版本用法 hadoop fs ...
  • 作者:WangMin 格言:努力做好自己喜歡的每一件事 作為前端開發來說,要掌握的CSS基礎一定很多,那麼CSS中盒子模型肯定是必考必問必掌握的前端知識點,因為它是CSS基礎中非常重要的內容,接下來我們就一起來瞭解一下盒子模型吧! 什麼是盒子模型? CSS 所有的HTML 標簽元素在網頁中都生成了一 ...
  • 這裡給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 頁面效果 具體實現 新增 1、監聽滑鼠抬起事件,通過window.getSelection()方法獲取滑鼠用戶選擇的文本範圍或游標的當前位置。 2、通過 選中的文字長度是否大於0或window.getSelection().isColla ...
  • 開發過程中經常遇到支付寶小程式跳轉的問題,這裡總結一下支付寶小程式跳轉的常見場景和方式,希望可以對大家有所幫助。 話不多說,上乾貨! 支付寶小程式跳轉的三種行為 支付寶小程式跳轉可以拆分為三種行為,即: 外部跳轉支付寶小程式 支付寶小程式內部頁面之間跳轉 支付寶小程式內部跳轉到外部 一、外部跳轉小程 ...
  • 飛碼是京東科技研發的低代碼產品,可使營銷運營域下web頁面快速搭建。飛碼是單web頁面搭建工具,從創建頁面到監測再到投產的一站式解決方案 ...
  • 接上一節:從零用VitePress搭建博客教程(5) - 如何自定義頁面模板、給頁面添加獨有的className和使頁面標題變成側邊目錄? 九、第三方組件庫的使用 我們經常看見UI組件庫的文檔,這裡我們就用element-plus第三方組件庫為例子,搭建組件庫文檔 examples:作為組件庫示例目 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...