awesome-repositories.com
Blog
MCP
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
panjf2000 avatar

panjf2000/gnet

0
View on GitHub↗
11,186 estrellas·1,117 forks·Go·Apache-2.0·12 vistasgnet.host↗

Gnet

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.

Features

  • Multi-Reactor Implementations - Implements a multi-reactor architecture that distributes network I/O across multiple parallel event loops.
  • Go Event-Driven Networking Frameworks - Provides a high-performance Go framework for building scalable, non-blocking TCP, UDP, and Unix socket servers.
  • Non-Blocking TCP Servers - Functions as a non-blocking socket manager capable of handling thousands of simultaneous connections with low overhead.
  • Event-Driven Networking - Implements a high-performance runtime model for handling concurrent connections using non-blocking I/O.
  • High-Concurrency Networking - Designed to manage massive numbers of simultaneous TCP and UDP connections with minimal memory overhead.
  • Multi-Transport Support - Enables seamless communication over TCP, UDP, and Unix Domain Sockets.
  • Socket Event Handling - Processes asynchronous read, write, and error events on network sockets to maintain data flow.
  • Non-Blocking Socket I/O - Provides asynchronous reading and writing of network sockets to handle thousands of concurrent connections without stalling.
  • TCP and Unix Socket Listeners - Supports accepting incoming traffic through both standard TCP ports and local Unix domain sockets.
  • Edge-Triggered I/O Pollers - Uses edge-triggered polling to minimize system calls by only notifying the application when socket states change.
  • Network Event Monitoring Schedulers - Utilizes low-level schedulers to monitor file descriptors for read, write, and close events.
  • Thread-Pinned Loops - Binds event loops to specific operating system threads to minimize context switching and improve cache locality.
  • Elastic Ring Buffers - Employs expandable circular buffers to manage data streams and reduce garbage collection pressure.
  • Event-Driven Task Dispatching - Provides a mechanism to send tasks to specific event loops for thread-safe connection management.
  • Event Loop Load Balancers - Distributes incoming network traffic across multiple internal event loops to optimize resource utilization.
  • Connection Lifecycle Managers - Tracks active network sockets and manages the connection lifecycle, including termination and state management.
  • Custom Protocol Implementations - Provides primitives for designing and implementing custom application-specific binary communication protocols.
  • Infrastructure Optimizations - Uses thread-pinning and edge-triggered I/O to maximize throughput and minimize system call frequency for low-latency performance.
  • Network Listeners - Configures and creates network listeners with custom socket options for address reuse and buffer sizing.
  • Socket Option Configurations - Sets low-level socket parameters such as keep-alive and address reuse to tune network stack interaction.
  • Asynchronous Task Execution - Schedules and executes non-blocking tasks within the event loop using a priority-based poller.
  • Connection Indexing Systems - Implements high-concurrency lookup structures to track and access active network connections in constant time.
  • Event Loop Concurrency - Controls the number of event-loop threads and distributes connections to ensure efficient processing power.
  • Concurrent Task Execution - Implements a worker pool to execute multiple concurrent background operations to increase throughput.
  • Reusable Buffer Pools - Minimizes allocation costs by employing reusable buffer structures that adapt to incoming network data.
  • Networking Libraries - High-performance, event-driven networking framework.
  • Network Libraries - High-performance, non-blocking event-driven Go network framework.
  • Librerías de redes - Event-driven, non-blocking networking framework.

Historial de estrellas

Gráfico del historial de estrellas de panjf2000/gnetGráfico del historial de estrellas de panjf2000/gnet

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Gnet

Proyectos open-source similares, clasificados según cuántas características comparten con Gnet.
  • cloudwego/netpollAvatar de cloudwego

    cloudwego/netpoll

    4,583Ver en GitHub↗

    Netpoll is an event-driven network framework and non-blocking I/O library designed to manage concurrent TCP and Unix domain socket connections. It utilizes a non-blocking event loop to monitor file descriptors and trigger callbacks for read and write events, serving as a high-performance socket manager and TCP network poller. The framework optimizes throughput across CPU cores by distributing incoming network connections across multiple pollers. It implements zero-copy networking primitives, using linked buffers and specialized memory management to read and write data while minimizing memory

    Go
    Ver en GitHub↗4,583
  • tidwall/evioAvatar de tidwall

    tidwall/evio

    6,034Ver en GitHub↗

    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

    Gonetworking
    Ver en GitHub↗6,034
  • chenshuo/muduoAvatar de chenshuo

    chenshuo/muduo

    16,157Ver en GitHub↗

    Muduo is a C++11 event-driven network library and framework designed for building high-concurrency Linux servers. It provides a toolkit for implementing scalable network services and socket communication using non-blocking I/O and asynchronous event processing. The framework implements a multi-threaded TCP server architecture that distributes connection handling across multiple CPU threads to maximize server throughput. This is achieved through a one-loop-per-thread model and a reactor pattern implementation, which dispatch network events from a central demultiplexer to registered handler fun

    C++
    Ver en GitHub↗16,157
  • walkor/workermanAvatar de walkor

    walkor/workerman

    11,547Ver en GitHub↗

    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

    PHPasynchronousevent-drivenhigh-performance
    Ver en GitHub↗11,547
Ver las 30 alternativas a Gnet→

Preguntas frecuentes

¿Qué hace panjf2000/gnet?

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.

¿Cuáles son las características principales de panjf2000/gnet?

Las características principales de panjf2000/gnet son: Multi-Reactor Implementations, Go Event-Driven Networking Frameworks, Non-Blocking TCP Servers, Event-Driven Networking, High-Concurrency Networking, Multi-Transport Support, Socket Event Handling, Non-Blocking Socket I/O.

¿Qué alternativas de código abierto existen para panjf2000/gnet?

Las alternativas de código abierto para panjf2000/gnet incluyen: cloudwego/netpoll — Netpoll is an event-driven network framework and non-blocking I/O library designed to manage concurrent TCP and Unix… tidwall/evio — Evio is a high-performance networking library for Go that provides a non-blocking socket framework. It utilizes an… chenshuo/muduo — Muduo is a C++11 event-driven network library and framework designed for building high-concurrency Linux servers. It… walkor/workerman — Workerman is an event-driven asynchronous socket framework for PHP. It provides the core components necessary to build… yuesong-feng/30daymakecppserver — This project is a C++ TCP server framework and educational socket programming guide. It provides a high-performance… riba2534/tcp-ip-networknote — TCP-IP-NetworkNote is a comprehensive technical reference and guide for implementing network communication using TCP…