作者appleboy46 (小恶魔)
看板Soft_Job
标题[心得] 用 Go 语言实作 Job Queue 机制
时间Wed Oct 23 09:46:31 2019
在本版吸收大家的经验跟知识,小弟感激不尽,这次来介绍『用 Go 语言实作 Job
Queue 机制』,用简单的 Channel + Goroutine 来实现简单的 Job Queue,底下是投影
片大纲:
1. what is the different unbuffered and buffered channel?
2. how to implement a job queue in golang?
3. how to stop the worker in a container?
4. Shutdown with Sigterm Handling
5. Canceling Workers without Context
6. Graceful shutdown with worker
7. How to auto-scaling build agent?
8. How to cancel the current Job
里面讲了很多实作细节,後续会将上面的细节录制成影片,放在 Udemy 或 Youtube 上面
。
部落格:
https://blog.wu-boy.com/2019/10/job-queue-in-golang/
投影片:
https://www.slideshare.net/appleboy/job-queue-in-golang-184064840
Youtube 影片:
https://www.youtube.com/channel/UCLCZJ9d_I7UJP2bpXpge8KA
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 3.0.67.238 (新加坡)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1571795206.A.270.html
1F:推 ruthertw: 推! 10/23 09:48
2F:→ robler: 这应该算是商业广告吧 10/23 10:20
3F:推 joekaojoekao: 推高手~ 10/23 10:36
4F:推 G4: 怎麽好像在Backend论坛看过相同题目的介绍XD 10/23 11:48
5F:→ appleboy46: 楼上 那就是我 XD 10/23 12:28
6F:推 gofigure: 这一位已经不是第一次这样偷渡商业文了 10/23 12:32
7F:推 gofigure: 所有心得的文章就只有他跟别人不同 10/23 12:59
移除有争议商业连结
※ 编辑: appleboy46 (3.0.67.238 新加坡), 10/23/2019 13:39:11
8F:推 anr2: 我只想问一个问题 如果没有go 你要怎麽做job queue ? 10/23 14:19
9F:→ appleboy46: 自干或用开源服务 10/23 14:36
11F:推 x246libra: 觉得广告还好,有提供做法,有投影片,稍微懂go就看到 10/23 18:55
12F:→ x246libra: 的懂,有分享给推,标题都说用go了,为什麽要质疑不用g 10/23 18:55
13F:→ x246libra: o要怎麽做,各位反应太大吧 10/23 18:55
14F:推 x246libra: 那我是否可以说,不用py要怎麽做资料分析,该语言特性 10/23 18:57
15F:→ x246libra: 做特定功能就方便啊,为什麽不用 10/23 18:57
16F:→ anr2: 为什麽不能质疑?? 10/23 20:01
17F:→ anr2: 原po又不一定是对的,想知道万一没工具怎麽做JQ,是你反应 10/23 20:04
18F:→ anr2: 太大吧 10/23 20:04
19F:→ anr2: 而且go还是有memory leak的可能性,至少我遇到很多次influx 10/23 20:05
20F:→ anr2: db记忆体放不掉 10/23 20:05
21F:→ anr2: 连问都不能,是有多玻璃心 10/23 20:05
22F:推 sharku: 帮回楼上问题, 用 Rust + tokio 10/23 20:50
23F:→ appleboy46: 大家和平讨论 XD 其实我也想知道有无其他方式可以做 10/23 22:10
24F:→ appleboy46: 如果要再选另一个语言,我个人会选 Rust XD 10/23 22:11
25F:→ touurtn: 对不对跟质疑别人不用go的关系是? 10/24 12:23
26F:推 eve1012: 推大神心得 10/24 12:26
27F:推 q26766: 标题就写go 还要进来嫌 那招啊 10/24 12:33
28F:推 alog: 如果你真的有心要问记忆体泄漏的问题 不就只要问这样的jq设 10/24 12:38
29F:→ alog: 计是否可能有记忆体泄漏的问题 10/24 12:38
30F:推 alog: 若要讲 原po不一定对...是说你看过哪个套件还是软体一次做 10/24 12:41
31F:→ alog: 对不用调整的? 10/24 12:41
32F:→ appleboy46: 只能跪求 @anr2 大大分享 『influxdb 记忆体』相关 10/24 13:22
33F:→ appleboy46: 经验以及该注意的地方? 10/24 13:23
34F:推 ggttoo44: 目前用 golang 的心得是都在做 nodejs 底层已经做好的 10/25 01:14
35F:→ ggttoo44: 事情,模仿 nodejs 的机制,goroutine 不需要 host 导致 10/25 01:14
36F:→ ggttoo44: leak 很容易,需要自己手动回收,很多 pool 等等机制就 10/25 01:14
37F:→ ggttoo44: 是在处理 nodejs 已经帮忙处理好的事情 10/25 01:14