项目简介
本项目为 nng(nanomsg-next-gen),是对 "libnanomsg" 的 SP 协议库的重写。目前处于预发布阶段,虽不适用于生产环境,但可用于开发。项目旨在构建高效、稳定的网络消息库,支持多种网络协议和功能。
项目的主要特性和功能
- 支持 PAIR、PUB/SUB、REQ/REP、管道模式等多种网络协议。
- 支持 WebSocket 和 WebSocket Secure(wss)协议。
- 可在 ZeroTier 网络等环境使用。
- 可编译支持 TLS,启用 "tls+tcp://" 和 "wss://" 方案。
- 有详细全面的测试代码,保障库的正确性和稳定性。
- 提供公共 API 的
nng.h
头文件,以及与旧版 nanomsg 兼容的nng_compat.h
头文件。
安装使用步骤
假设你已下载本项目的源码文件。
编译环境要求
需要 CMake 3.1 及以上版本,建议使用 Ninja 以加快编译速度。
编译步骤
在 Linux/UNIX 系统上,若已安装 Ninja,按以下步骤编译和测试:
sh
$ mkdir build
$ cmake -G Ninja..
$ ninja
$ ninja test
启用 TLS 支持
若需编译支持 TLS 的版本,可在配置时添加 -DNNG_ENABLE_TLS=ON
参数:
sh
$ cmake -G Ninja -DNNG_ENABLE_TLS=ON..
注意,NNG_ENABLE_TLS
依赖于 mbedTLS 库,该库在许多系统中以打包形式提供,也可针对其他系统进行构建。同时,mbedTLS 库有其他许可要求(Apache 或 GPL),请留意许可影响。
查看文档
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】