一架梯子,一头程序猿,仰望星空!
Asynq任务队列教程

Asynq任务队列教程

Asynq 是一个 Go 异步任务库,主要通过 Worker 机制异步处理任务。它以 Redis 作为消息队列,是个简单高效的分布式任务队列框架。
  • 1. Go Asynq 快速入门

    Asynq是一个Go语言异步任务框架,它以Redis作为消息队列,具备可伸缩性和简易性。

  • 2. Handler详解

    你提供给服务器运行的 Handler 才是你的异步任务处理逻辑的核心。Handler 的责任是接受一个任务并进行处理,同时需要考虑上下文。如果处理不成功,它应该报告任何错误以便稍后重试任务。

  • 3. Task生命周期

    异步任务在其生命周期中经历了多个状态。本页面记录了任务的从创建到删除的生命周期。

  • 4. 信号处理(Signals)

    本页面介绍了如何使用信号来优雅地关闭工作服务器进程。

  • 5. 队列优先级

    本页面将说明如何配置`asynq`后台处理优先级以满足您的需求。

  • 6. 任务重试

    本页面介绍如何配置任务重试。

  • 7. 任务超时&撤销

    在本页面中,我将介绍如何设置任务的超时时间或截止时间,以及如何处理取消操作。

  • 10. 任务去重

    Asynq中的Unique任务功能可以确保在Redis队列中只有一个任务。

  • 12. 任务聚合

    本页面介绍了Asynq的任务聚合功能.

  • 13. Redis Cluster

    本页面介绍了如何在Asynq中使用Redis Cluster作为消息代理。

  • 14. 高可用

    本页面介绍如何配置asynq以利用Redis Sentinel来避免由于Redis故障而造成的停机时间。

  • 15. 监控&告警

    我们建议在生产环境中使用监控工具例如 [Prometheus](https://prometheus.io/) 来监控你的工作进程和队列。