3 个仓库
Using client-side and server-side middleware hooks to modify job payloads before enqueuing or wrap execution logic for error handling.
Distinct from Property Interception Middleware: Distinct from Property Interception Middleware: focuses on job lifecycle hooks, not property getters/setters.
Explore 3 awesome GitHub repositories matching software engineering & architecture · Task Lifecycle Interceptions. Refine with filters or upvote what's useful.
River 是一个用于 Go 语言的事务性作业队列和分布式作业调度器,使用 PostgreSQL 进行持久化和状态管理。它作为一个可恢复的任务框架,允许将长时间运行的后台工作分解为持久化的步骤,并在失败后从最后保存的检查点恢复。 该系统通过允许后台任务与主应用数据在同一数据库事务中入队和完成,确保了严格的数据一致性。其独特之处在于采用领导者选举的协调器模型,以管理跨工作节点集群的周期性和延迟任务。 该平台涵盖了广泛的功能,包括异步任务处理、带有指数退避(exponential backoff)的重试策略配置,以及通过命名队列实现的工作负载隔离。它还提供通过 Web 管理界面进行监控的工具、执行遥测,以及用于注入日志记录等横切关注点的中间件系统。 数据库模式迁移可以通过命令行界面或直接通过代码进行管理。
Provides middleware hooks to modify job payloads before enqueuing or wrap execution logic for error handling.
Dramatiq is a distributed task queue and workload manager used to offload function execution to background workers. It functions as an asynchronous task orchestrator that enables the distribution of computational tasks across a cluster using a pluggable transport layer supporting RabbitMQ and Redis. The framework provides specialized tools for complex task orchestration, including the ability to link background jobs into sequences, pipelines, and barriers. It further manages distributed concurrency through the use of shared mutexes, rate limiters, and exponential backoff retries to prevent re
Provides middleware hooks to modify job payloads before enqueuing and wrap execution logic for global behavior control.
Kong is a declarative command line interface framework and parser for Go. It maps flags and positional arguments directly into typed Go structures using struct tags, allowing developers to define terminal interfaces through data models rather than manual parsing logic. The project functions as a configuration mapper that populates Go structures from a combination of command-line arguments, environment variables, and JSON files. It distinguishes itself by providing a dependency injection container to pass external services into command handlers and a plugin architecture for dynamic command reg
Executes custom logic at specific stages, such as before resolving arguments or after applying inputs.