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 is a transactional job queue and distributed job scheduler for Go that uses PostgreSQL for persistence and state management. It functions as a resumable task framework, allowing long-running background work to be broken into persisted steps that can resume from the last saved checkpoint after a failure. The system ensures strict data consistency by allowing background tasks to be enqueued and completed within the same database transaction as the primary application data. It distinguishes itself through a coordinator model that employs leader election to manage periodic and delayed tasks
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.