[心得] 用 Go 語言實現 Pub/Sub 模式

看板Soft_Job (軟體人)作者 (小惡魔)時間3年前 (2022/05/01 17:41), 編輯推噓10(1006)
留言16則, 11人參與, 最新討論串1/1
相信大家都知道發布 / 訂閱模式,開發者可以透過第三方開源工具像是 Redis, NSQ 或 Nats 等來實現訂閱機制,本篇則是會教大家如何用 Go 語言寫出一個單機版本的 Pub/Sub 模式,在單一系統內非常輕量級,且不需要靠第三方服務就可以輕易實現。底下 會直接用單一訂閱 Topic 機制來撰寫 Publisher 及 Subscriber。 00:00 為什麼要用 Go 語言實現 Pub/Sub 模式 01:00 Subscriber 訂閱訊息 05:14 Publisher 發送訊息 07:19 Unsubscribe 取消訂閱 10:01 實際範例 11:14 使用 goleak 偵測代碼是否有 leaks 15:18 心得 部落格: https://bit.ly/pub-sub-in-go 程式碼: https://bit.ly/3P0WzXN 影片: https://www.youtube.com/watch?v=blaYXmmA8zw
PS. 面試來討論這題,應該可以有不錯的交流? -- AppleBoy Blog: http://blog.wu-boy.com -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.110.136.13 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1651398064.A.707.html

05/01 17:54, 3年前 , 1F
有點興趣,先推再看
05/01 17:54, 1F

05/01 17:56, 3年前 , 2F
推 來研究
05/01 17:56, 2F

05/01 19:02, 3年前 , 3F
蠻好奇怎麼會用time sleep而不是用wait group
05/01 19:02, 3F

05/01 19:02, 3年前 , 4F
有些細節還是可以看出來一些東西 ...
05/01 19:02, 4F

05/01 19:18, 3年前 , 5F
05/01 19:18, 5F

05/01 20:51, 3年前 , 6F
模式本身跟實作細節還好 使用情境可以問很多東西 不過那
05/01 20:51, 6F

05/01 20:53, 3年前 , 7F
些直接拿 redis 等工具的做法去問也一樣 還比較好聚焦
05/01 20:53, 7F

05/01 23:02, 3年前 , 8F
推推
05/01 23:02, 8F

05/02 07:16, 3年前 , 9F
@gofigure main.go 用來 Demo 而已,就沒有進一步考慮
05/02 07:16, 9F

05/02 07:16, 3年前 , 10F
需要在 main 結束前等待 Message 處理完畢。
05/02 07:16, 10F

05/02 07:18, 3年前 , 11F
做服務還是要把 Graceful Shutdown 考慮進去
05/02 07:18, 11F

05/02 07:18, 3年前 , 12F
可以參考這篇文章: https://bit.ly/3F8QiVq
05/02 07:18, 12F

05/02 09:41, 3年前 , 13F
05/02 09:41, 13F

05/03 23:11, 3年前 , 14F
推!
05/03 23:11, 14F

05/05 15:30, 3年前 , 15F
05/05 15:30, 15F

05/10 14:33, , 16F
這不是傳說中的 Appleboy 嗎
05/10 14:33, 16F
文章代碼(AID): #1YRbMmS7 (Soft_Job)
文章代碼(AID): #1YRbMmS7 (Soft_Job)