功能特点gRPC 是由 Google 开发的一种高性能、跨语言的远程过程调用(RPC)框架,基于 HTTP/2 和 Protocol Buffers 构建。gRPC 支持多种编程语言,包括 C/C++、Java、Python 等,并通过生成代码来简化服务端和客户端的开发。高效的序列化与传输:采用 Protocol Buffers 进行高效的消息序列化,支持压缩和流式传输。...
时间效率和空间效率都是JSON的3-5倍。(现在的RPC基本都是用protobuf作为通讯数据格式。)...
但是Think库很多东西与Boost心有灵犀,有很多相似的理念,比如将命令行选项、环境变量以及ini配置文件这三个最常用的参数设置方式统一在一套接口里,就是对应boost的program_options库,对应boost的网络通讯框架asio,Think库也是提供了一套基于事件机制的通讯框架,包含了网络事件及时钟事件(为了支持定时器等功能),支持...
Boost.Asio:用于网络和底层I/O编程的跨平台的C++库。 libev:功能齐全,高性能的时间循环,轻微地仿效libevent,但是不再像libevent一样有局限性,也修复了它的一些bug。 libevent:事件通知库 libuv:跨平台异步I/O。 音频 音频,声音,音乐,数字化音乐库 FMOD:易于使用的跨平台的音频引擎和音频内容的游戏创作工具。 M...
Boost.Asio:用于网络和底层I/O编程的跨平台的C++库 Casablanca:C++ REST SDK cpp-netlib:高级网络编程的开源库集合 Dyad.c:C语言的异步网络 libcurl:多协议文件传输库 Mongoose:非常轻量级的网络服务器 Muduo:用于Linux多线程服务器的C++非阻塞网络库 net_skeleton:C/C++的TCP 客户端/服务器库 ...
C语言有很多第三方库可以简化网络编程,如libevent、libuv、Boost.Asio等。这些库提供了封装好的高层接口,使开发者能够更容易地创建服务器和客户端应用程序。 使用框架: 有一些C语言的网络框架可用于开发服务器和客户端应用程序,如ACE(Adaptive Communication Environment)、POCO(POrtable COmponents)等。这些框架提供了一...
Boost.Asio:用于网络和底层I/O编程的跨平台的C++库 Casablanca:C++ REST SDK cpp-netlib:高级网络编程的开源库集合 Dyad.c:C语言的异步网络 libcurl :多协议文件传输库 Mongoose:非常轻量级的网络服务器 Muduo :用于Linux多线程服务器的C++非阻塞网络库 net_skeleton:C/C++的TCP 客户端/服务器库 nope.c :基于...
Boost.Asio: 用于网络和底层I/O编程的跨平台的C++库。 libev: 功能齐全,高性能的时间循环,轻微地仿效libevent,但是不再像libevent一样有局限性,也修复了它的一些bug。 libevent: 事件通知库 libuv: 跨平台异步I/O。 libco: 协程,微信支持8亿用户同时在线的底层IO库。功能强大 ...
Asio基于Boost开发的异步IO库,封装了Socket,简化基于socket程序的开发。 开源、免费,支持跨平台。 http://think-async.com/ (3)POCO POCO C++ Libraries 提供一套 C++ 的类库用以开发基于网络的可移植的应用程序,功能涉及线程、线程同步、文件系统访问、流操作、共享库和类加载、套接字以及网络协议包括:HTTP、 FTP...
当然,仅仅掌握语言还远远不够,C++做后台开发时,模块跟模块直接除了通过lib库或so库的方式相互调用外,还有更多的是采用网络交互,这个时候,你就需要掌握多线程编程和网络编程的基础知识,当然,由于开发效率的需要,现在你不需要从零搭建一个网络服务框架,比如:ACE、boost的asio和libevent。当然现在已经有各种开源的RPC框架...