Netpoll ist ein ereignisgesteuertes Netzwerk-Framework und eine Non-Blocking-I/O-Bibliothek, die darauf ausgelegt ist, gleichzeitige TCP- und Unix-Domain-Socket-Verbindungen zu verwalten. Sie nutzt eine Non-Blocking-Event-Loop, um Dateideskriptoren zu überwachen und Callbacks für Lese- und Schreibereignisse auszulösen, und fungiert als leistungsstarker Socket-Manager und TCP-Netzwerk-Poller.
Die Hauptfunktionen von cloudwego/netpoll sind: Event-Driven Networking, Non-Blocking Event Loops, Non-Blocking TCP Servers, Network Pollers, Connection Lifecycle Events, Network Listeners, Non-Blocking Socket Managers, Non-Blocking Socket I/O.
Open-Source-Alternativen zu cloudwego/netpoll sind unter anderem: panjf2000/gnet — gnet is a high-performance event-driven networking framework for Go, designed for building scalable TCP, UDP, and Unix… tidwall/evio — Evio is a high-performance networking library for Go that provides a non-blocking socket framework. It utilizes an… tokio-rs/mio — Mio is a low-level I/O library for Rust that provides an event-driven framework for monitoring multiple network… reactphp/socket — This library provides a framework for building event-driven, non-blocking network applications in PHP. It enables the… jorisvink/kore — Kore is an event-driven web and WebSocket server framework designed for building high-performance web services and… ithewei/libhv — libhv is a high-performance C/C++ network library and event-driven I/O framework used to build TCP, UDP, SSL, HTTP,…
gnet is a high-performance event-driven networking framework for Go, designed for building scalable TCP, UDP, and Unix socket servers. It functions as a non-blocking socket manager and multi-reactor network engine that handles thousands of simultaneous connections with low memory overhead. The framework distinguishes itself by using a multi-reactor architecture that distributes I/O across multiple event loops pinned to operating system threads to minimize context switching. It employs edge-triggered polling to reduce system call frequency and utilizes elastic ring-buffers to minimize allocati
Evio is a high-performance networking library for Go that provides a non-blocking socket framework. It utilizes an event loop to process TCP, UDP, and Unix domain socket traffic through a low-level asynchronous protocol interface. The project functions as a multi-core network load balancer, distributing connections across multiple CPU cores using round-robin or least-connections strategies. It supports socket reuse, allowing multiple sockets on a single host to bind to the same port. The library covers a broad range of socket management and packet processing capabilities, including multi-pro
Mio is a low-level I/O library for Rust that provides an event-driven framework for monitoring multiple network sockets and file descriptors. It acts as a portable wrapper for operating system native polling systems, including epoll, kqueue, and IOCP, allowing applications to trigger events when resources are ready for reading or writing without blocking the execution thread. The library provides a non-blocking socket interface for managing TCP, UDP, and Unix sockets. It distinguishes itself through a vectored I/O implementation, enabling scatter-gather reads and writes across multiple buffer
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