61 repositorios
Systems for executing multiple communicating coroutines simultaneously to increase throughput.
Distinct from Concurrent Execution Managers: Focuses on the execution of communicating coroutines rather than managing overlapping workflow instances.
Explore 61 awesome GitHub repositories matching software engineering & architecture · Concurrent Task Execution. Refine with filters or upvote what's useful.
Vert.x is a reactive polyglot framework and asynchronous programming library for the Java Virtual Machine. It functions as an event-driven networking framework and toolkit for building non-blocking applications. The system enables the development of high-concurrency network services and event-driven microservices. It supports the creation of reactive services using multiple languages running on the JVM. The framework covers a wide range of capabilities including the management of HTTP and TCP network protocols, non-blocking file system access, and the integration of reactive clients.
Utilizes non-blocking I/O multiplexing to monitor multiple network connections simultaneously without stalling threads.
gnet es un framework de redes de alto rendimiento basado en eventos para Go, diseñado para construir servidores escalables de TCP, UDP y sockets Unix. Funciona como un gestor de sockets no bloqueantes y un motor de red multi-reactor que maneja miles de conexiones simultáneas con un bajo consumo de memoria. El framework se distingue por utilizar una arquitectura multi-reactor que distribuye la E/S a través de múltiples bucles de eventos vinculados a hilos del sistema operativo para minimizar el cambio de contexto. Emplea polling activado por flancos (edge-triggered) para reducir la frecuencia de llamadas al sistema y utiliza buffers circulares elásticos para minimizar los costes de asignación y la presión sobre el recolector de basura. La biblioteca cubre una amplia gama de capacidades de red, incluyendo la distribución de conexiones con balanceo de carga entre núcleos de CPU, la ejecución asíncrona de tareas mediante pools de trabajadores y un sistema estructurado para la gestión del ciclo de vida de las conexiones. También proporciona primitivas para implementar protocolos binarios personalizados y gestionar opciones de sockets de bajo nivel.
Implements a worker pool to execute multiple concurrent background operations to increase throughput.
libco is a C++ coroutine library and user-space task orchestrator designed for cooperative multitasking and high-concurrency execution. It functions as a high-concurrency network framework and a synchronous-to-asynchronous wrapper that allows blocking system calls and socket functions to run asynchronously without modifying existing business logic. The project utilizes a specialized stack-copying context switching model to support millions of simultaneous TCP connections on a single machine. It includes a high-performance time wheel scheduler for managing asynchronous background jobs and dela
Integrates non-blocking I/O to handle millions of concurrent network connections without blocking the main execution thread.
G0DM0D3 is a static web client and multi-model chat gateway designed for AI research, prompt optimization, and red teaming. It provides a unified interface to query numerous AI models in parallel, allowing for the simultaneous evaluation of different prompt variations and sampling parameters to identify the most successful outputs. The project features specialized tooling for probing safety filters and bypassing model constraints through an input perturbation engine that applies text obfuscation and character substitution. It includes a composite scoring system to rank model performance and a
Executes multiple prompt and model combinations simultaneously to identify the most effective response patterns.
Apache Tomcat is an open-source implementation of the Jakarta Servlet, Pages, Expression Language, and WebSocket specifications, serving as a container for running Java web applications. It provides a modular architecture with a servlet container, connector abstraction for multiple I/O models, and a pipeline-based request processing system that handles cross-cutting concerns through composable components. The server supports container-managed security with configurable realms for authentication against JDBC, LDAP, or memory-based credential stores, and offers TLS encryption with optional Open
Handles high-concurrency workloads with advanced I/O extensions that avoid blocking operations.
Wren is an embeddable, class-based scripting language and bytecode interpreter. It provides a dependency-free virtual machine designed for integrating dynamic script execution into host applications via a C API. The language is centered on a modern object-oriented model featuring inheritance, method overloading, and first-class functions. It utilizes a concurrent fiber runtime to manage lightweight, cooperatively scheduled execution paths without relying on operating system threads. The project includes a comprehensive suite of object-oriented primitives, closure-based state capture, and a m
Implements a concurrent runtime based on lightweight fibers and cooperative scheduling to handle asynchronous workflows.
Wren is a bytecode-compiled, class-based scripting language designed as an embeddable programming language. It provides a lightweight runtime and interface for executing dynamic scripts directly within host software applications. The engine utilizes a single-pass compiler to transform source code into compact bytecode and a virtual machine to process those instructions. It supports concurrent task execution through a system of lightweight fibers and coroutines. The language implements a class-based object model with dynamic message dispatch for organizing code into reusable components. It al
Enables the simultaneous execution of multiple communicating coroutines using lightweight fibers.
BAML is a prompt engineering framework and LLM client generator that defines AI prompts as type-safe functions. It serves as a structured data extraction tool and workflow orchestrator, transforming unstructured model responses into strongly typed objects using a custom schema language and alignment algorithms. The project distinguishes itself by using a compiler to generate language-specific boilerplate code for API communication and output parsing. It features a dedicated environment for designing complex prompt templates with conditional logic and reusable snippets, and employs genetic alg
Runs multiple prompt functions in parallel across different threads or asynchronous tasks to improve throughput.
ChezScheme is a compiler and runtime environment for the Scheme programming language that transforms source code into optimized machine binaries. It serves as a high-performance implementation of the language, producing executable machine code for execution on physical hardware. The project features a native machine code compiler, a read-eval-print loop for executing and editing multi-line expressions in real time via a shell, and a generational garbage collected runtime for automatic memory management. It also includes a foreign function interface for integrating external C libraries and lan
Implements concurrent program execution across processor cores using non-blocking input and output.
This project is a Go shell scripting library and framework designed for writing automation scripts and CLI tools. It provides a concurrent data pipeline system for chaining sources, filters, and sinks to process text and JSON streams. The library distinguishes itself through a comprehensive toolkit for shell-like operations, including a text processing engine for regular expression filtering and frequency analysis, a filesystem utility toolkit for recursive search and path manipulation, and an integrated HTTP client wrapper for building data pipelines that fetch web content. The capability s
Implements a concurrent execution model using Go channels to process data streams across multiple pipeline stages.
Gatling is a load testing framework and traffic generation engine used to measure response times and error rates under heavy load. It functions as an as-code testing library, allowing users to define high-volume traffic simulations and performance tests through programming languages rather than graphical interfaces. The system enables multi-language load simulation and the ability to model concurrent user traffic to identify infrastructure bottlenecks and stability limits. It supports a test-as-code workflow, where version-controlled scripts are integrated into build pipelines as performance
Employs a Netty-based non-blocking I/O engine to handle massive network traffic with minimal resource consumption per connection.
Hyperf is a high-performance PHP coroutine framework designed for building microservices and middleware. It utilizes non-blocking coroutines to handle high concurrency and low-latency request processing, providing a foundation for scalable distributed systems. The framework is distinguished by an aspect-oriented programming based dependency injector that enables pluggable components and meta-programming. It includes a coroutine-optimized object-relational mapper with integrated model caching and an orchestration toolkit for microservice governance, featuring service discovery, circuit breaker
Executes multiple tasks concurrently using non-blocking coroutines to increase system throughput.
Gevent is a Python coroutine concurrency library and asynchronous task manager designed for high-concurrency I/O tasks. It provides a cooperative networking framework for building asynchronous TCP, UDP, and HTTP servers, as well as a WSGI web server implementation for hosting web applications. The project is distinguished by its standard library monkey-patching tool, which replaces blocking synchronous functions with cooperative versions to enable asynchronous behavior in third-party code. This allows for a cooperative multitasking workflow where the system yields execution during I/O waits t
Uses lightweight pseudo-threads (greenlets) to manage thousands of simultaneous tasks without OS thread overhead.
This is a learning collection of example projects that demonstrate core Spring Cloud patterns for building microservice architectures. The repository covers the fundamental building blocks of a microservices system, including service discovery through a central registry, centralized configuration management from Git or SVN repositories, API gateway-based request routing, circuit breaker patterns for fault tolerance, and distributed request tracing across service boundaries. The examples show how to implement service registration and dynamic discovery so that clients can locate microservices b
Builds reactive web services using Spring WebFlux for non-blocking I/O and high concurrency.
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
Teaches goroutine-based concurrency with channels and cancellation, a supporting topic in the Go concurrency guides.
A True Instrumentable Binary Emulation Framework
Provides a command-line utility to quickly emulate shellcode or executable files with debugging options.
Asio is a C++ library for performing network and low-level I/O operations using a consistent asynchronous model that avoids blocking program execution. It provides a portable, cross-platform interface for network socket communication across different operating systems, and manages multiple asynchronous operations without requiring explicit thread management or locking. The library implements a proactor-based asynchronous model where operations post completion handlers to a queue for later execution, and wraps operating system I/O multiplexing mechanisms like epoll, kqueue, IOCP, and select in
Uses non-blocking input and output to handle multiple operations across processor cores.
Este proyecto es una colección de scripts prácticos y guías de referencia que demuestran características e idiomas avanzados del lenguaje Python. Proporciona implementaciones de código para dominar conceptos como concurrencia, metaprogramación y diseño de estructuras de datos. El repositorio incluye ejemplos del modelo de objetos de Python, cubriendo acceso a atributos personalizados, protocolos de descriptor y anulaciones de métodos especiales. También presenta implementaciones de patrones de diseño que utilizan funciones de primera clase y decoradores para reducir el código repetitivo orientado a objetos. El código base cubre una amplia gama de capacidades, incluyendo programación asíncrona con bucles de eventos y futuros, la creación de secuencias y generadores personalizados, y el uso de clases base abstractas para la aplicación de interfaces. Además, demuestra la gestión de recursos a través de gestores de contexto y el manejo de secuencias de texto y bytes.
Executes multiple I/O-bound operations concurrently using an event loop to maximize throughput.
Leaf es un framework de servidores de juegos escrito en Go, diseñado para construir backends de juegos multijugador. Proporciona una arquitectura modular que organiza la lógica del servidor en módulos independientes e incluye un planificador de tareas concurrente para gestionar funciones ordenadas, diferidas o recurrentes. El framework cuenta con un servidor TCP y WebSocket que gestiona conexiones simultáneas a través de una única interfaz. Incorpora un enrutador de mensajes capaz de decodificar datos en Protobuf y JSON para mapear paquetes de red entrantes a módulos específicos del servidor. El sistema incluye capacidades para enrutamiento de red multiprotocolo, distribución de carga en múltiples núcleos y registro de eventos del sistema. También proporciona utilidades para cargar archivos de configuración CSV en estructuras indexadas residentes en memoria para búsquedas rápidas de datos.
Executes multiple communicating processes in parallel with automatic error recovery to increase throughput.
GraphQL-Ruby es una biblioteca de Ruby para construir APIs de GraphQL con un esquema fuertemente tipado y un motor de ejecución de consultas dedicado. Proporciona un framework integral para mapear objetos de la aplicación a un sistema de tipos formal, permitiendo la obtención estructurada de datos mediante resolvers definidos. El proyecto destaca por sus mecanismos avanzados de rendimiento y entrega, incluyendo un data loader para batching y caché que evita patrones de consulta N+1. Admite la entrega de datos de alto rendimiento mediante streaming de respuestas incremental, respuestas de consulta diferidas y obtención de datos en paralelo usando fibers. Además, proporciona soporte nativo para convenciones de Relay, incluyendo helpers especializados para conexiones e identificación de objetos. La biblioteca cubre una amplia superficie de gestión de API, con control de acceso granular, versionado de esquemas para mantener la compatibilidad hacia atrás y actualizaciones en tiempo real mediante suscripciones. También incluye herramientas de gestión de tráfico para proteger los recursos del servidor, como la limitación de complejidad de consultas y de tasa de peticiones. El desarrollo y la observabilidad están respaldados por herramientas de análisis de AST, trazado de ejecución y utilidades de prueba especializadas para la verificación de carga por lotes.
Runs network or database requests concurrently using non-blocking I/O operations to reduce resolution time.