[心得] 用 Go 语言实作 Job Queue 机制

楼主: appleboy46 (小恶魔)   2019-10-23 09:46:31
在本版吸收大家的经验跟知识,小弟感激不尽,这次来介绍‘用 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
作者: ruthertw (小叶老大)   2019-10-23 09:48:00
推!
作者: robler (章鱼丸)   2019-10-23 10:20:00
这应该算是商业广告吧
作者: joekaojoekao (bingroom)   2019-10-23 10:36:00
推高手~
作者: G4 (国王 <( ̄︶ ̄)>)   2019-10-23 11:48:00
怎么好像在Backend论坛看过相同题目的介绍XD
楼主: appleboy46 (小恶魔)   2019-10-23 12:28:00
楼上 那就是我 XD
作者: gofigure (平行世界)   2019-10-23 12:32:00
这一位已经不是第一次这样偷渡商业文了
作者: anr2 (???)   2019-10-23 14:19:00
我只想问一个问题 如果没有go 你要怎么做job queue ?
楼主: appleboy46 (小恶魔)   2019-10-23 14:36:00
自干或用开源服务Node.JS: https://zhuanlan.zhihu.com/p/38393122
作者: x246libra (楓)   2019-10-23 18:55:00
觉得广告还好,有提供做法,有投影片,稍微懂go就看到的懂,有分享给推,标题都说用go了,为什么要质疑不用go要怎么做,各位反应太大吧那我是否可以说,不用py要怎么做资料分析,该语言特性做特定功能就方便啊,为什么不用
作者: anr2 (???)   2019-10-23 20:01:00
为什么不能质疑??原po又不一定是对的,想知道万一没工具怎么做JQ,是你反应太大吧而且go还是有memory leak的可能性,至少我遇到很多次influxdb内存放不掉连问都不能,是有多玻璃心
作者: sharku (明珠求瑕)   2019-10-23 20:50:00
帮回楼上问题, 用 Rust + tokio
楼主: appleboy46 (小恶魔)   2019-10-23 22:10:00
大家和平讨论 XD 其实我也想知道有无其他方式可以做如果要再选另一个语言,我个人会选 Rust XD
作者: touurtn (vv)   2019-10-24 12:23:00
对不对跟质疑别人不用go的关系是?
作者: eve1012 (lian)   2019-10-24 12:26:00
推大神心得
作者: q26766 (cancan)   2019-10-24 12:33:00
标题就写go 还要进来嫌 那招啊
作者: alog (A肉哥)   2019-10-24 12:38:00
如果你真的有心要问内存泄漏的问题 不就只要问这样的jq设计是否可能有内存泄漏的问题若要讲 原po不一定对...是说你看过哪个套件还是软件一次做对不用调整的?
楼主: appleboy46 (小恶魔)   2019-10-24 13:22:00
只能跪求 @anr2 大大分享 ‘influxdb 内存’相关经验以及该注意的地方?
作者: ggttoo44 (thai)   2019-10-25 01:14:00
目前用 golang 的心得是都在做 nodejs 底层已经做好的事情,模仿 nodejs 的机制,goroutine 不需要 host 导致leak 很容易,需要自己手动回收,很多 pool 等等机制就是在处理 nodejs 已经帮忙处理好的事情

Links booklink

Contact Us: admin [ a t ] ucptt.com