Sobre el proyecto
cellnet es una biblioteca de red de servidor de código abierto escrita en Go, de alto rendimiento, componentizada y fácil de extender. Tras varias iteraciones de versiones, es adecuada tanto para principiantes como para proyectos privados y comerciales, especialmente en el ámbito de servidores de juegos.
## Características principales
- **Soporte de protocolos de transporte**:
- TCP: admite reconexión del conector y reinicio elegante del listener.
- UDP: envío y recepción de paquetes UDP puros.
- HTTP (en pruebas): admite envío y recepción de JSON y form, lo que facilita la integración de servidores de juegos con SDK, pero para servicios web a gran escala se recomienda usar bibliotecas especializadas (como gin).
- WebSocket: implementado sobre gorilla/websocket.
- **Códec (Codec)**:
- Soporte integrado para formatos de codificación como Google Protobuf, JSON, protocolo binario (goobjfmt), ProtoPlus (protoplus), etc.
- Admite codificación mixta de envío y recepción, permitiendo usar simultáneamente diferentes codificaciones para comunicarse con servidores en distintos lenguajes sin modificar el código.
- **Modelo de colas**:
- Admite lógica asíncrona de un solo hilo (adecuado para MMORPG), lógica síncrona multihilo (adecuado para robots), lógica concurrente multihilo (adecuado para pasarelas, servidores HTTP).
- **RPC**: admite RPC síncrono y asíncrono.
- **Registro de mensajes**: permite visualizar cómodamente cada campo de los mensajes enviados y recibidos.
## Arquitectura y extensión
cellnet abstrae en alto grado Processor y Peer, permitiendo al usuario extender horizontalmente para satisfacer diferentes necesidades de encapsulación de red. Admite Codec, Peer y Processor personalizados.
## Ejemplos de uso
Se proporcionan ejemplos sencillos de servidor y cliente que muestran cómo crear un Peer, vincular procesadores, enviar y recibir mensajes.
## Obtención y compilación
Requiere Go 1.10 o superior; obtenga las dependencias relacionadas mediante `go get`.
## Documentación y soporte
Se ofrece documentación sobre colas, Peer, procesamiento de mensajes, personalización de extensiones, etc., así como FAQ e historial de versiones.
## Colaboradores
Se agradece a los múltiples colaboradores por corregir errores y optimizar el rendimiento.
## Historial de versiones
v4 (2018.5), v3 (2017.8), v2 (2017.1), v1 (2015.8).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.