gmq 消息队列 gmq

ewfkeke2019-07-10 09:46:59 • 8170 次点击    
这是一个分享于 2019-07-10 09:46:59 的项目,其中的信息可能已经有所发展或是发生改变。

gmq是基于redis提供的特性,使用go语言开发的一个简单易用的队列;支持延迟任务,异步任务,超时任务,优先级任务

应用场景

  • 延迟任务
    • 延迟任务,例如用户下订单一直处于未支付状态,半个小时候自动关闭订单
  • 异步任务
    • 异步任务,一般用于耗时操作,例如群发邮件等批量操作
  • 超时任务
    • 规定时间内(TTR)没有执行完毕或程序被意外中断,则消息重新回到队列再次被消费,一般用于数据比较敏感,不容丢失的
  • 优先级任务
    • 当多个任务同时产生时,按照任务设定等级优先被消费,例如a,b两种类型的job,优秀消费a,然后再消费b

gmq流程

流程图

web监控

gmq提供了一个简单web监控平台(后期会提供根据job.Id追踪消息的功能),方便查看当前堆积任务数,默认监听端口为8000,例如:http://127.0.0.1:8000, 界面如下: 监控

基于golang实现的轻量级消息中间件Read More

Latest commit to the gmq-v2.0 branch on 2-14-2023
Download as zip
授权协议:
开发语言:
golang 查看源码»
8170 次点击  ∙  1 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传