31 个仓库
Systems that manage and execute background tasks using persistent worker pools or distributed processing models.
Distinguishing note: Focuses on the architectural pattern of worker-pool execution rather than general task scheduling.
Explore 31 awesome GitHub repositories matching software engineering & architecture · Task Execution Engines. Refine with filters or upvote what's useful.
Airflow is a workflow orchestration platform for authoring, scheduling, and monitoring complex data pipelines as code using Python. It employs a DAG-based task scheduler to manage execution timing and dependencies via directed acyclic graphs, utilizing a distributed task execution engine to run workloads across a cluster of worker nodes. The platform provides a data pipeline monitor for tracking the health and execution history of programmatic workflows. This includes a web interface for workflow progress visualization and health monitoring to identify and troubleshoot pipeline failures. The
Features an execution engine that manages background tasks using distributed processing models and persistent worker pools.
Kestra is a declarative workflow orchestrator designed to manage complex task dependencies and automated processes through versioned configuration files. It functions as a distributed platform that decouples task scheduling from execution by offloading computational workloads to a fleet of worker nodes. The system uses a reactive, event-driven engine to initiate workflows automatically in response to external signals, webhooks, schedules, or file system changes. The platform distinguishes itself through a modular plugin architecture that allows for the integration of custom tasks and external
Runs individual actions within a flow, choosing between computational tasks for data work or flowable tasks for controlling execution logic.
Tasmota is a universal firmware platform for ESP8266 and ESP32 microcontrollers, designed to provide local control and management of smart home hardware. It functions as an event-driven automation controller that replaces proprietary factory firmware, allowing users to manage relays, sensors, and lighting systems without relying on external cloud services. The system is built on a modular driver architecture that enables dynamic hardware configuration and peripheral support through a web-based management interface. The platform distinguishes itself through a template-driven hardware mapping s
Triggers custom commands immediately upon device wake-up or before entering deep sleep.
MaaAssistantArknights is a cross-platform automation engine designed for mobile games, utilizing computer vision and input simulation to perform routine tasks. It functions as an Android emulator controller, managing game lifecycles, resource farming, and infrastructure optimization through structured, scripted workflows. The project distinguishes itself through a modular configuration system that allows users to define complex automation logic via external instruction files. This framework supports dynamic task modification, configuration inheritance, and schema validation, ensuring that cus
Manages and executes background automation tasks using structured configuration files.
This library is a collection of generic utilities for the Go programming language designed to simplify the manipulation of slices and maps. It provides a functional toolkit that enables developers to perform data transformations, such as filtering, mapping, and reducing, while maintaining strict type safety through the use of language-level generics. The project distinguishes itself by offering a dual approach to data processing that balances functional programming patterns with performance-oriented execution. It supports both immutable functional pipelines for predictable state transitions a
Facilitates high-throughput data processing via concurrent task execution engines.
Luigi is a Python framework designed for building and managing complex batch data pipelines. It functions as a workflow orchestration engine that organizes tasks into directed acyclic graphs, ensuring that jobs execute in the correct logical order based on their dependencies. By utilizing a centralized scheduler, the system coordinates task execution across distributed environments, tracks global workflow state, and prevents redundant processing by verifying the existence of output targets before triggering any work. The project distinguishes itself through a robust state-tracking mechanism t
Triggers defined data processing tasks from the command line or programmatically.
Elysia is a high-performance TypeScript web framework designed for building type-safe backend services. It provides a modular, plugin-based architecture that allows developers to compose server logic, middleware, and validation schemas into scalable application instances. By leveraging native web standards, the framework ensures portability across diverse JavaScript runtimes, including Node.js, Deno, and various edge computing environments. The framework distinguishes itself through its focus on end-to-end type safety, automatically synchronizing request and response definitions between the s
Executes cleanup or logging operations after the response has been sent to the client.
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
Processes data by running tasks on worker nodes, fetching data from connectors, and exchanging intermediate results.
Vercel is a cloud platform for building, deploying, and scaling web applications. It provides a unified infrastructure that automates the build process by detecting project frameworks and distributing static and dynamic content through a global content delivery network. The platform executes application logic using serverless functions that scale automatically based on real-time traffic demand. The platform distinguishes itself through a centralized AI gateway that proxies requests to multiple model providers, enabling standardized authentication, observability, and cost tracking. It supports
Provides fluid compute tasks that combine serverless scalability with the performance of persistent server environments.
Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program
Runs a defined logic block upon application startup and automatically shuts down the process once the task completes.
KernelSU is a kernel-based root management framework for Android that provides administrative access to applications by operating directly within the operating system kernel. By integrating management logic into the kernel source, it enables system-wide permission control through syscall interception and function patching. This approach allows for the enforcement of fine-grained mandatory access control, assigning custom security domains to root processes to restrict their capabilities and prevent unauthorized actions. The project distinguishes itself through a systemless modification archite
Allows users to run custom scripts during startup to initialize background services or block the boot sequence.
Dask 是一个并行计算框架和分布式任务调度器,旨在将 Python 数据科学工作流从单机扩展到大型集群。它作为一个集群资源管理器,通过将任务及其依赖项表示为有向无环图来编排计算逻辑。这种架构允许系统在管理复杂执行要求的同时,自动将工作负载分配到可用硬件上。 该项目通过一个延迟评估引擎脱颖而出,该引擎将数据操作推迟到明确请求时才执行,从而实现全局图优化和高效的资源分配。它结合了内存感知数据溢出功能,以防止在处理超过可用内存的数据集时系统崩溃,并利用任务图融合将操作序列组合成单个执行步骤,从而最大限度地减少调度开销和节点间通信。 该平台为大规模数据分析提供了全面的功能面,包括对分布式机器学习、高性能计算集成和并行数据处理的支持。它提供了用于集群生命周期管理、性能分析和任务执行实时监控的广泛工具。用户可以在各种基础设施上部署这些环境,包括本地硬件、云提供商、容器化系统和高性能计算集群。
Submits arbitrary functions for parallel execution on a cluster and gathers results back to the local environment.
Taskflow is a C++ task-parallel framework designed to build high-performance parallel workflows and complex dependency graphs. It provides a programming model that organizes computational work into directed acyclic graphs, enabling developers to manage concurrency, resource scheduling, and task dependencies across multi-core CPUs and GPU accelerators. The framework distinguishes itself through its ability to orchestrate heterogeneous systems, allowing for the integration of hardware-accelerated kernels and memory operations into unified execution pipelines. It supports dynamic runtime subflow
Supports spawning new tasks during execution to handle recursive or unpredictable workloads.
Firefox is a cross-platform web browser engine designed to render web content, execute JavaScript, and manage secure browsing sessions. It utilizes a multi-process isolation architecture that distributes browser tasks across independent operating system processes to ensure stability and prevent site-specific failures from impacting the entire application. The engine incorporates a sandboxed execution environment to restrict web content and untrusted scripts to isolated memory compartments, enforcing security policies that prevent unauthorized access to system resources. The project distinguis
Registers and triggers specific code modules or experiments during the browser initialization process.
rq is a distributed task queue and background worker system for Python that uses a Redis backend to decouple task submission from execution. It functions as a reliable message queue and task scheduler, allowing Python functions or asyncio coroutines to be processed asynchronously across multiple worker processes. The project distinguishes itself through reliable queuing mechanisms that prevent job loss during worker crashes using atomic operations. It provides specialized orchestration capabilities, including the prevention of duplicate jobs, job execution prioritization, and the ability to m
Supports the execution of non-blocking Python coroutines to handle high-volume I/O workloads.
ollama-python is a Python client for interacting with large language models. It provides an interface for sending prompts to receive text and chat completions, as well as a dedicated client for generating numerical vector embeddings from text. The project includes a wrapper that emulates the OpenAI API, allowing applications built for that standard to interact with local models. It also provides a non-blocking asynchronous client for executing concurrent requests. The library covers the full model lifecycle, including the ability to pull, create, list, and delete models within a local enviro
Uses Python's asyncio event loop to handle multiple network requests simultaneously without halting the program.
Robyn is a high-performance asynchronous web framework and server for Python that utilizes a Rust-powered runtime to execute code. It functions as an asynchronous Python web server designed to handle many concurrent requests efficiently through a multithreaded execution model. The project includes specialized capabilities for AI agent request routing, managing communication between agents and external tools. It also serves as a WebSocket communication server, maintaining persistent bidirectional channels for real-time data exchange. The framework covers a broad range of web infrastructure, i
Bridges the Rust runtime with Python's asyncio event loops for non-blocking request handling.
Hug is a type-driven Python web framework designed for building APIs. It uses Python type annotations to automatically validate and convert incoming request data and to format outgoing responses. The framework functions as an automated documentation tool by extracting function signatures and markers from source code to generate accessible API specifications. It also supports non-blocking coroutines for asynchronous API processing to handle background tasks without interrupting the main request cycle. The project provides capabilities for REST API development, including route mapping, endpoin
Utilizes non-blocking asyncio coroutines to handle background tasks without interrupting the main request cycle.
Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for building and executing fault-tolerant, multi-step pipelines as directed acyclic graphs (DAGs), with automatic retries, scheduling, and real-time observability. The system is built around durable task checkpointing, which persists execution state after each step so work can resume from the last checkpoint after a worker crash or restart, and it supports event-driven task resumption that pauses a task until a matching external event arrives. The platform distinguishes itself through it
Creates fan-out child task runs from within a parent when the number of parallel items is only known at runtime.
Pixi is a conda environment manager that creates reproducible, lock-file-backed environments with cross-platform support and multi-language dependency resolution. It combines package management from both conda-forge and PyPI simultaneously, coordinating their dependency graphs to prevent conflicts, while pinning every transitive dependency to exact versions in a cross-platform lock file for bit-for-bit identical environments across machines. The project distinguishes itself by also functioning as a cross-platform task runner that executes user-defined commands and multi-step pipelines inside
Runs user-defined multi-step command pipelines as named tasks with dependencies and environment variables.