开源项目推荐:C/C++网络库(asio/muduo/poco/libevent/libuv/libhv/workflow/acl/HP-Socket/FxSocket/HslCommunica等等)

(1)ACE

庞大、复杂,适合大型项目。开源、免费,不依赖第三方库,支持跨平台。

http://www.cs.wustl.edu/~schmidt/ACE.html

(2)Asio

Asio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。

开源、免费,支持跨平台。

Asio C++ Library

Boost C++ Libraries

GitHub - chriskohlhoff/asio: Asio C++ Library

https://github.com/boostorg/asio

https://github.com/boostorg/beast

https://github.com/zhllxt/asio2

header only,不依赖boost库,不需要单独编译,在工程的Include目录中添加asio2路径,在源码中#include <asio2/asio2.hpp>即可使用;

(3)POCO

POCO C++ Libraries 提供一套 C++ 的类库用以开发基于网络的可移植的应用程序,功能涉及线程、线程同步、文件系统访问、流操作、共享库和类加载、套接字以及网络协议包括:HTTP、 FTP、SMTP 等;其本身还包含一个 HTTP 服务器,提供 XML 的解析和 SQL 数据库的访问接口。POCO库的模块化、高效的设计及实现使得POCO特别适合嵌入式开发。在嵌入式开发领域,由于C++既适合底层(设备I/O、中断处理等)和高层面向对象开发,越来越流行。

POCO C++ Libraries - Simplify C++ Development

(4)libevent

Libevent是一个轻量级的开源高性能网络库,从它的官网标题:libevent-an event notification library就能知道它的机制是采用事件触发,封装了以下三种事件的响应:IO事件,定时器事件,信号事件。select模型来实现跨平台的操作,Windows环境下支持IOCP。Google的开源WEB浏览器Chromium在Mac和Linux版本中,也使用了Libevent,足见该库的质量。

libevent

(5)libev

libev和libevent很像,按照作者的介绍,可以作为libevent的替代者,能够提供更高的性能。

libev是一个高性能事件循环,所实现的功能就是一个强大的reactor。

http://software.schmorp.de/pkg/libev.html

(6)c++ sockets library

封装了sockets C API的C++类库。

支持SSL, IPv6, tcp 和 udp sockets, sctp sockets, http协议, 高度可定制的错误处理。

C++ Sockets Library: Unix & Windows networking made easy

(7)libcurl

libcurl是免费的轻量级的客户端网络库,支持DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet, TFTP. 支持SSL, HTTP POST, HTTP PUT, FTP上传, HTTP form上传,代理,cookies, 用户名与密码认证。

如果你开发的是客户端,libcurl是一个不错的选择。

libcurl - the multiprotocol file transfer library

(8)libuv

libuv | Cross-platform asynchronous I/O

​​​​​​https://github.com/libuv/libuv

Header-only, event based, tiny and easy to use libuv wrapper in modern C++ - now available as also shared/static library

https://github.com/skypjack/uvw

(9)libhv

比libevent、libuv更易用的国产网络库。

https://github.com/ithewei/libhv

https://hewei.blog.csdn.net/

(10)ACL

https://github.com/acl-dev/acl

(11)HP-Socket

https://github.com/ldcsaa/HP-Socket

DeskSocket 是一款用于测试网络通信的桌面(Windows 10)工具软件,软件支持 TCP 服务端TCP 客户端 、UDP 服务端 和UDP 客户端 四种工作模式;同时对每种模式提供几种重要的菜单功能,满足程序员日常工作中对网络数据通信测试的需求。

https://github.com/Mtr1994/DeskSocket

(12)Sogou C++ Workflow

https://github.com/sogou/workflow

https://github.com/sogou/srpc

1412 - 知乎

(13)muduo

https://github.com/chenshuo/muduo

(14)ananas

https://github.com/loveyacper/ananas

(15)FxSocket

Windows UDP LAN communication

https://github.com/mxc19781024/FxSocketicon-default.png?t=N7T8https://github.com/mxc19781024/FxSockethttps://github.com/Poofee/FEEMicon-default.png?t=N7T8https://github.com/Poofee/FEEM

(16)C#之HslCommunication

一个非常流行的工业物联网通信插件。使用此dll可以非常方便、稳定、快速地从多个品牌的PLC设备中获取数据,并且还支持redis、mqtt、websocket等,可以让您的数据在网络上自由传输,降低企业开发成本。

https://github.com/dathlin/HslCommunication

http://www.hslcommunication.cn/

https://www.cnblogs.com/dathlin/

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值