15 repositorios
Libraries providing non-blocking TCP and UDP socket implementations for specific operating systems.
Distinct from Socket Communication: The candidates are either too generic (async programming) or too narrow (UDP only); this captures the identity as a general-purpose async socket library.
Explore 15 awesome GitHub repositories matching networking & communication · Asynchronous Socket Libraries. Refine with filters or upvote what's useful.
CocoaAsyncSocket is a networking library for macOS and iOS that provides core components for managing asynchronous TCP and UDP streams. It implements non-blocking network communication to maintain application responsiveness during data transfers, featuring a delegate-based system for managing connection streams and packet handling. The library includes a secure communication layer that wraps TCP sockets to apply encryption standards, protecting client and server traffic from unauthorized interception. Its capabilities cover non-blocking connection management for both stream-based TCP and pac
Provides a core networking library for macOS and iOS that handles asynchronous TCP and UDP communications.
Workerman is an event-driven asynchronous socket framework for PHP. It provides the core components necessary to build high-concurrency network servers, including an asynchronous TCP framework, a coroutine library for task management, and dedicated implementations for HTTP and WebSocket servers. The project enables the development of specialized network services using custom frame-based communication protocols. It supports both inbound concurrent server implementation and asynchronous outbound connectivity to remote services. The framework covers a broad range of network programming capabili
An event-driven framework providing non-blocking TCP and UDP socket implementations for building high-concurrency servers in PHP.
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.
Functions as a non-blocking socket manager capable of handling thousands of simultaneous connections with low overhead.
ReactPHP is an asynchronous runtime and event-driven I/O framework for PHP. It provides an environment for executing concurrent tasks through a central event loop implementation and reactor pattern, allowing applications to handle multiple operations without pausing the main execution thread. The project includes a specialized asynchronous socket library for TCP, UDP, and TLS communication, alongside a non-blocking HTTP server and client for streaming web requests and responses. Its capability surface covers asynchronous control flow via promises and fibers, non-blocking network connectivity
Provides a specialized toolset for non-blocking TCP, UDP, and TLS network connections.
Swift NIO is a low-level, event-driven network framework for the Swift language. It serves as an asynchronous network protocol stack and I/O library designed to build high-performance network servers and clients that handle thousands of simultaneous connections. The framework functions as a high-concurrency network engine that dispatches events across multiple CPU cores. It enables the implementation of custom network protocols by processing raw bytes through a sequence of reusable data transformation handlers. The system provides capabilities for non-blocking I/O multiplexing, asynchronous
Enables the construction of event-driven servers and clients capable of high-concurrency input and output.
AndroidAsync is a non-blocking networking library for Android that provides asynchronous sockets, HTTP clients, and servers based on Java NIO. It serves as a toolkit for managing raw TCP socket connections and bidirectional data streams using an asynchronous input and output architecture. The library includes a dedicated WebSocket framework for establishing persistent full-duplex communication channels between Android clients and servers. It also enables the hosting of a lightweight asynchronous HTTP server directly on an Android device to handle incoming network traffic. Its broader capabil
Ships as a low-level tool for managing raw TCP socket connections using an asynchronous I/O architecture.
Smallchat is a minimal implementation of a concurrent network server and TCP-based chat system designed as a demonstration of C socket programming. It provides a basic server and client architecture that enables real-time text communication between multiple connected users. The project focuses on the implementation of a networked chat server that handles simultaneous client sessions. It utilizes a centralized broadcasting model to route incoming text from one client to all other active participants. The system manages concurrent client connections and session tracking using socket descriptor
Provides a minimal implementation of a networked TCP chat server and client.
MQTTnet is a comprehensive MQTT library for .NET that supports both client and broker roles in a single codebase. It provides a full-featured broker implementation capable of hosting a server with access control, message interception, session persistence, and support for mixed MQTT protocol versions. The client side offers robust publish-subscribe communication with automatic reconnection that preserves quality-of-service guarantees, ensuring reliable message delivery across network interruptions. The library distinguishes itself with a plugin-based authentication pipeline for validating clie
Manages network I/O with non-blocking sockets to handle thousands of concurrent connections without blocking threads.
Netpoll es un framework de red impulsado por eventos y una biblioteca de E/S sin bloqueo diseñada para gestionar conexiones concurrentes de TCP y sockets de dominio Unix. Utiliza un bucle de eventos sin bloqueo para monitorear descriptores de archivos y activar devoluciones de llamada para eventos de lectura y escritura, sirviendo como un gestor de sockets de alto rendimiento y un poller de red TCP. El framework optimiza el rendimiento a través de los núcleos de la CPU distribuyendo las conexiones de red entrantes entre múltiples pollers. Implementa primitivas de red de copia cero (zero-copy), utilizando búferes vinculados y gestión de memoria especializada para leer y escribir datos mientras se minimizan las asignaciones de memoria y la duplicación de datos. La biblioteca proporciona un conjunto completo de capacidades para la gestión del ciclo de vida de la conexión, incluyendo marcado saliente, configuración de keepalive y controles de tiempo de espera basados en plazos. Además, optimiza el rendimiento a través del almacenamiento en caché de objetos de conexión, operaciones de E/S vectorizadas y estrategias de balanceo de carga para distribuir el tráfico entre bucles de eventos. El proyecto incluye utilidades para gestionar el despliegue del servidor, como mecanismos para un apagado elegante desconectando los listeners y esperando la finalización de las conexiones activas.
Implements TCP servers that use asynchronous I/O to handle many concurrent connections without blocking threads.
Janet es un lenguaje de programación dinámico basado en Lisp que cuenta con una máquina virtual de bytecode basada en registros y un motor de scripting integrable. Funciona como un runtime de concurrencia basado en fibras e incluye un motor de análisis basado en Gramáticas de Expresión de Análisis (PEG). El proyecto se distingue por su capacidad de integrarse en aplicaciones de C o C++ a través de una interfaz de cabecera mínima. Utiliza un sistema de macros al estilo Lisp para la transformación de código en tiempo de compilación y emplea herencia de tablas basada en prototipos para el comportamiento orientado a objetos. El runtime cubre un amplio conjunto de capacidades, incluyendo la gestión de IO asíncrona a través de un bucle de eventos no bloqueante, interoperabilidad de bibliotecas nativas a través de una interfaz de funciones externas y procesamiento de texto integral utilizando gramáticas PEG. También proporciona herramientas para la automatización del sistema, como un bucle de lectura-evaluación-impresión (REPL), un sistema de módulos para la resolución de símbolos y utilidades para la comunicación de sockets de red y la gestión del sistema de archivos. El entorno incluye herramientas de diagnóstico para la depuración de la ejecución de bytecode y puede empaquetar el código fuente en ejecutables binarios independientes.
Implements non-blocking TCP sockets to create reliable byte streams between clients and servers.
Curio es una biblioteca de Python para concurrencia estructurada y programación de red asíncrona. Funciona como un framework para gestionar miles de conexiones TCP simultáneas mediante sockets no bloqueantes y E/S de alto rendimiento. La biblioteca organiza las operaciones asíncronas en una jerarquía de corrutinas padre e hijo para asegurar la terminación y limpieza fiable de las tareas dependientes. Proporciona un conjunto de herramientas para coordinar estas operaciones concurrentes mediante grupos de tareas y tiempos de espera (timeouts). El framework cubre una amplia gama de capacidades de gestión de concurrencia, incluyendo comunicación entre tareas mediante colas y sincronización de recursos compartidos usando locks y semáforos. También incluye soporte para ejecutar procesos externos y delegar tareas bloqueantes a hilos separados para mantener la capacidad de respuesta del bucle de eventos.
Provides non-blocking socket operations for high-concurrency network communication.
This project is a native PostgreSQL database driver for the Rust programming language. It functions as a type-safe database mapper and connector that provides both synchronous and asynchronous interfaces for executing queries against a PostgreSQL backend. The library implements a type-safe mapping system to convert PostgreSQL data types into Rust types, ensuring consistency during data transfer. It also serves as an encrypted database connector, supporting secure communication protocols to protect data in transit between the application and the database. The driver covers core database capab
Offers both synchronous and asynchronous interfaces for executing queries against PostgreSQL.
cppcoro is a C++ coroutine library and concurrency toolkit providing primitives for asynchronous tasks, lazy generators, and non-blocking execution. It functions as an asynchronous I/O framework for managing network sockets and file operations through an event loop. The library features a work-stealing thread pool for distributing tasks across multiple cores and a set of async generators for producing lazy sequences of values both synchronously and asynchronously. It includes a concurrency toolkit with async mutexes, latches, and shared tasks to coordinate multi-threaded execution. Its capab
Provides asynchronous TCP and UDP socket implementations for non-blocking network communication.
Undertow is a Java HTTP web server and non-blocking I/O server implementation. It functions as a Jakarta Servlet container and a WebSocket server, providing the infrastructure to execute standardized servlet components and maintain persistent full-duplex communication channels for real-time data exchange. The project is characterized by an asynchronous architecture that utilizes a non-blocking I/O model to handle large numbers of concurrent connections. It incorporates buffer-pooling mechanisms and zero-copy data transfers to reduce memory allocation and garbage collection pressure. The syst
Implements a server-side non-blocking model to handle thousands of concurrent connections without tying up system threads.
This library provides a framework for building event-driven, non-blocking network applications in PHP. It enables the development of asynchronous TCP and TLS servers and clients that manage multiple concurrent connections without stalling the main execution thread. By utilizing an event-loop architecture, the library handles network operations and data exchange through asynchronous streams, ensuring that the application remains responsive during high-throughput tasks. The project distinguishes itself through its integration with operating system primitives, such as raw file descriptors and Un
Provides a non-blocking library for building event-driven TCP and TLS socket servers and clients using asynchronous streams in PHP.