14 dépôts
Architectures that distribute network IO and query processing across multiple CPU cores.
Distinct from Network Request Processing: Specific to the multi-threaded execution of database queries rather than general network request lifecycles.
Explore 14 awesome GitHub repositories matching software engineering & architecture · Multi-Threaded Request Handling. Refine with filters or upvote what's useful.
KeyDB is a multithreaded in-memory key-value store and distributed cache. It functions as a NoSQL database utilizing multi-version concurrency control to execute non-blocking queries and scans. The project is a multithreaded fork of Redis that maintains protocol compatibility while utilizing a multithreaded architecture to scale across multi-core hardware. It distinguishes itself with flash-tiered storage, allowing the system to offload data from primary RAM to SSD or flash storage to increase total capacity. The system supports high availability through active-active mesh replication and mu
Distributes network IO and query parsing across multiple CPU cores to handle concurrent requests without blocking.
Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar
Distributes network IO and query processing across multiple CPU cores to maintain high throughput and low latency.
Webmagic is a Java web crawling framework designed for building scalable automated crawlers to download and process large volumes of web pages. It functions as a distributed web crawler and dynamic content crawler, utilizing an XPath HTML parser to locate and extract specific data points from page structures. The framework distinguishes itself through its ability to handle dynamic content by rendering JavaScript and executing asynchronous requests to extract data from non-static pages. It also allows users to define and execute crawler logic via scripting languages, enabling the update of col
Distributes web requests and page parsing across multiple concurrent threads to increase total data collection throughput.
This project is a command-line utility and Python-based scraper designed to download and archive educational media from Coursera for offline access. It functions as a tool for saving course syllabi, videos, subtitles, and notebooks to a local file system to ensure a secure backup of academic materials. The tool distinguishes itself by providing capabilities for course quiz extraction, retrieving questions and answers from both graded and ungraded quizzes. It supports the retrieval of learning materials from both legacy and on-demand platforms and implements interrupted download resumption to
Distributes network requests across multiple threads to increase throughput and optimize download performance.
Puma is a concurrent HTTP server for Ruby applications that implements the Rack interface. It operates as a clustered web server, using a combination of worker processes and threads to handle multiple simultaneous web connections via TCP ports or UNIX domain sockets. The server features a master-worker process model that utilizes multiple CPU cores and employs copy-on-write preloading to reduce memory usage. It supports zero-downtime restarts through socket-handover capabilities, allowing application updates without dropping pending network requests. The project includes a token-authenticate
Scales web traffic by distributing network IO and request handling across multiple CPU cores using threads and processes.
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
Distributes network traffic across multiple operating system threads to process concurrent requests in parallel.
This project is a proxy aggregation platform designed to collect and verify free proxy server lists from web platforms, social media, and public repositories. It functions as a crawler framework that gathers proxy data and subscription links, a validation tool for testing server liveness, and a synchronization service for distributing the results. The system uses a plugin-based architecture that allows for the integration of custom Python scripts to handle diverse web source structures. It also includes utilities to transform raw proxy data into standardized configuration formats compatible w
Utilizes multi-threaded execution to increase the throughput of high-volume proxy data collection and validation.
CocoaHTTPServer est un serveur web embarqué léger conçu pour gérer les requêtes réseau entrantes et servir du contenu d'application local. Le projet implémente la découverte de service basée sur Bonjour pour diffuser la disponibilité du serveur sur les réseaux locaux et prend en charge WebDAV pour la gestion de fichiers à distance, permettant aux fichiers d'être créés, déplacés et modifiés via HTTP. La sécurité réseau est gérée via le chiffrement TLS basé sur certificat et l'authentification des ressources par mot de passe. Le routage des requêtes est géré via un système basé sur délégué, tandis que les connexions concurrentes sont gérées en utilisant Grand Central Dispatch.
Uses Grand Central Dispatch to manage concurrent network connections via a pool of worker threads.
MiniOB is an open-source educational relational database kernel designed for learning the internals of database systems. It implements a dual-engine storage architecture combining B+ Tree and LSM-Tree, supports SQL parsing and query execution, and provides transactional processing with multi-version concurrency control. The system communicates with clients using the MySQL wire protocol and includes a vector database extension for storing and querying high-dimensional vectors. The project distinguishes itself through its comprehensive coverage of core database concepts in a single, learnable c
Assign each client connection its own thread that listens for messages, processes SQL, and sends responses.
Ce projet est un serveur web HTTP en C++ conçu pour l'environnement Linux. Il fonctionne comme un serveur réseau haute performance qui traite les requêtes HTTP et délivre des fichiers statiques. Le serveur utilise un modèle « reactor » et un pool de threads pour gérer des volumes élevés de connexions simultanées. Il emploie une machine à états et des expressions régulières pour l'analyse des requêtes, tandis qu'un système de timer à tas binaire (min-heap) gère les délais d'expiration des connexions pour fermer automatiquement les sockets inactifs. Les fonctionnalités supplémentaires incluent un pool de connexions à la base de données pour réduire la surcharge des handshakes et un système d'authentification utilisateur intégré pour l'inscription et la connexion. L'observabilité du système est assurée par un système de journalisation asynchrone qui enregistre les événements d'exécution en arrière-plan.
Implements a reactor model and thread pool to distribute network IO and request processing across multiple CPU cores.
SocialBox-Termux is a credential bruteforce suite and security tool collection designed to run within the Termux Android environment. It functions as an automated account cracker used to test password lists against usernames to discover valid login credentials for social media and email platforms. The toolkit incorporates network traffic masking by routing requests through the Tor network to conceal the origin IP address. It utilizes signature-based rate bypass to mimic legitimate client traffic and avoid automated login blocks. The suite provides capabilities for account validation to verif
Implements multi-threaded network request handling to accelerate the process of testing password lists.
Swifter est un moteur de serveur HTTP léger et une bibliothèque réseau pour le langage de programmation Swift. Il fournit une couche réseau minimale conçue pour héberger des services web internes, construire des applications côté serveur et implémenter des serveurs HTTP personnalisés. Le projet permet la création de services web embarqués pour le contrôle à distance ou le monitoring d'état et prend en charge l'hébergement web léger avec une empreinte minimale. Ses capacités couvrent la gestion des connexions TCP brutes et des sockets réseau, utilisant un cycle requête-réponse pour parser les données entrantes en requêtes HTTP et les mapper vers des fonctions de gestionnaire.
Processes incoming HTTP requests sequentially on a blocking thread.
sourcekit-lsp is a language server protocol implementation and IDE code intelligence backend. It functions as a Swift language server and source code indexer, providing semantic analysis, autocomplete, and navigation features to compatible text editors. The project integrates directly with the Swift toolchain and SourceKit framework to deliver precise type information. It also leverages Clang-integrated parsing to provide semantic analysis for C-family languages, enabling cross-language navigation across project files. The server manages source code indexing and symbol lookups while using a
Implements non-blocking request handling to ensure the text editor remains responsive during heavy indexing tasks.
NFS-Ganesha est un serveur de fichiers en mode utilisateur qui fournit un accès réseau aux ressources de stockage en utilisant les protocoles NFSv3, v4 et v4.1. En fonctionnant entièrement dans l'espace utilisateur, il fonctionne comme une passerelle de stockage qui permet le partage de fichiers à distance entre les systèmes Linux et Unix tout en évitant les complexités et les risques de stabilité associés au développement de systèmes de fichiers au niveau du noyau. Le projet se distingue par une abstraction de système de fichiers modulaire qui lui permet de traduire les requêtes réseau en opérations pour divers systèmes de stockage back-end. Il maintient une gestion de protocole avec état pour prendre en charge des fonctionnalités avancées comme le verrouillage de fichiers et les délégations, tout en utilisant un modèle de dispatching de requêtes multi-threadé et un cœur piloté par les événements asynchrones pour gérer le trafic concurrent sur le matériel multi-cœur. Au-delà de ses capacités principales de serveur, le logiciel prend en charge la gestion dynamique de la configuration, permettant aux administrateurs de mettre à jour les exportations et les politiques de sécurité au moment de l'exécution sans interrompre les connexions clients actives. Il sert d'interface unifiée pour l'intégration de stockage distribué, facilitant l'accès aux fichiers multiplateformes et la gestion centralisée des répertoires partagés à travers un réseau.
Distributes incoming network traffic across a pool of worker threads to maximize performance on multi-core server hardware.