About this project

Zinx is a lightweight concurrent server framework built with Golang, aimed at developers who need a simple yet extensible TCP server foundation. It is widely used in enterprise settings for backend message forwarding, long-linked game servers, and web framework message handling plugins. The framework emphasizes concise code so developers can quickly understand its internals and customize it for their specific needs. Key features include: - **TCP server and client**: Provides both server and client implementations for easy testing and development. - **Message routing**: Supports registering routers by message ID to handle different request types. - **Worker pool**: Manages a pool of goroutines to process messages concurrently, improving performance. - **Configuration file**: Allows customization of server name, host, port, max connections, worker pool size, log settings, and more via a JSON file. - **Logging**: Integrated logging with configurable isolation levels and file output. - **Connection hooks**: Supports custom callbacks when connections are established or closed. - **Heartbeat**: Includes heartbeat mechanism for connection health monitoring. Zinx is accompanied by extensive tutorials and documentation, including a wiki and online courses, making it suitable for learning and production use. The project is open-source under the MIT license and has contributions from multiple developers, with ports available in C++, Lua, and Java.