work:在Go中处理后台作业

时间:2024-03-09 08:34:53
【文件属性】:

文件名称:work:在Go中处理后台作业

文件大小:319KB

文件格式:ZIP

更新时间:2024-03-09 08:34:53

Go

Craft.io品/工作 gocraft / work可让您排队和处理Go中的后台作业。 作业是持久的,并得到Redis的支持。 与Go的Sidekiq非常相似。 快速高效。 比,和更快。 请参阅下面的基准。 可靠-即使您的程序崩溃也不会丢失工作。 作业中间件-适用于指标检测,日志记录等 如果作业失败,将重试指定的次数。 安排工作在将来发生。 排队唯一的作业,以便队列中一次只存在一个具有给定名称/参数的作业。 Web UI,用于管理失败的作业并观察系统。 定期按cron时间表安排工作。 暂停/取消暂停作业并控制流程内和跨流程的并发 招聘新工作 要排队工作,您需要使用Redis名称空间和Redigo池制作一个Enqueuer。 每个排队的作业都有一个名称,并且可以使用可选参数。 参数是k / v对(内部序列化为JSON)。 package main import ( "


【文件预览】:
work-master
----go.mod(1KB)
----priority_sampler.go(2KB)
----run.go(1KB)
----client.go(16KB)
----priority_sampler_test.go(1KB)
----client_test.go(19KB)
----time.go(354B)
----go.sum(6KB)
----worker_test.go(17KB)
----log.go(119B)
----dead_pool_reaper_test.go(11KB)
----job_test.go(5KB)
----job.go(6KB)
----periodic_enqueuer_test.go(4KB)
----observer.go(6KB)
----webui()
--------webui_test.go(13KB)
--------internal()
--------webui.go(6KB)
----observer_test.go(3KB)
----worker_pool.go(14KB)
----worker_pool_test.go(8KB)
----enqueue.go(8KB)
----heartbeater.go(3KB)
----LICENSE(1KB)
----dead_pool_reaper.go(5KB)
----redis.go(11KB)
----README.md(18KB)
----identifier_test.go(174B)
----requeuer.go(2KB)
----todo.txt(1KB)
----identifier.go(210B)
----requeuer_test.go(2KB)
----heartbeater_test.go(1KB)
----enqueue_test.go(12KB)
----DEVELOPING.md(683B)
----worker.go(9KB)
----cmd()
--------workwebui()
--------workenqueue()
--------workfakedata()
----periodic_enqueuer.go(3KB)
----benches()
--------bench_goworker()
--------bench_goworkers()
--------bench_work()
--------bench_jobs()
----run_test.go(3KB)

网友评论