July 15th, 2024

NNG: Lightweight Messaging Library

NNG is a versatile messaging library focusing on reliability, scalability, and security. It simplifies messaging tasks, supports multiple platforms, and emphasizes compatibility, usability, and performance for developers' efficiency.

Read original articleLink Icon
NNG: Lightweight Messaging Library

NNG is a lightweight, broker-less messaging library designed to simplify common messaging problems like publish/subscribe and RPC-style communication. It frees programmers from managing low-level details, allowing them to focus on application logic. NNG prioritizes reliability, scalability across multiple cores, maintainability through modular architecture, and extensibility for adding new protocols and transports. Security features include TLS 1.2 and ZeroTier support for authentication and encryption. The library prioritizes usability by offering intuitive APIs and compatibility with existing nanomsg and mangos applications. NNG supports various platforms including Linux, macOS, Windows, and mobile platforms like Android and iOS. Building NNG requires a C99 compatible compiler and CMake version 3.13 or newer, with optional TLS support requiring mbedTLS. The project emphasizes compatibility, ease of use, and performance, making it a valuable tool for developers seeking efficient messaging solutions.

Link Icon 1 comments
By @masfoobar - 4 months
I am enjoying NNG.

Not used it is production (yet) - but just getting my feet wet using it. The documentation can be a hit or miss but if you dig about you can find what you need.

For example, one link I found was using functionality that is now deprecated - and finding what you should be using instead took longer than planned.

Other than this, I do like it and - in the near future - will prefer to use it over ZeroMQ.