libhv教程00--目录
`libhv`是一个比`libevent、libev、libuv`更易用的跨平台国产网络库,用来开发`TCP/UDP/SSL/HTTP/WebSocket `客户端/服务端。项目地址:码云镜像:QQ技术交流群:**739352073**
·
libhv
是一个比libevent、libev、libuv
更易用的跨平台国产网络库,用来开发TCP/UDP/SSL/HTTP/WebSocket
客户端/服务端。
项目地址:https://github.com/ithewei/libhv.git
码云镜像:https://gitee.com/libhv/libhv.git
QQ技术交流群:739352073(1群已满,请加2群:630196235)
libhv博客专栏:https://hewei.blog.csdn.net/category_9866493.html
libhv源码剖析:https://hewei.blog.csdn.net/article/details/123295998
libhv接口文档:https://gitee.com/libhv/libhv/blob/master/docs/cn/
📚 教程目录
- libhv教程01–介绍与体验
- libhv教程02–编译与安装
- libhv教程03–链库与使用
- libhv教程04–编写一个完整的命令行程序
- libhv教程05–事件循环以及定时器的简单使用
- libhv教程06–创建一个简单的TCP服务端
- libhv教程07–创建一个简单的TCP客户端
- libhv教程08–创建一个简单的UDP服务端
- libhv教程09–创建一个简单的UDP客户端
- libhv教程10–创建一个简单的HTTP服务端
- libhv教程11–创建一个简单的HTTP客户端
- libhv教程12–创建一个简单的WebSocket服务端
- libhv教程13–创建一个简单的WebSocket客户端
- libhv教程14–200行实现一个纯C版jsonrpc框架(文本协议拆包)
- libhv教程15–200行实现一个C++版protorpc框架(二进制协议拆包)
- libhv教程16–多线程/多进程服务端编程
- libhv教程17–Qt中使用libhv
- libhv教程18–动手写一个tinyhttpd
- libhv教程19–MQTT的实现与使用
🍭 示例代码
c版本
- 事件循环: examples/hloop_test.c
- 定时器: examples/htimer_test.c
- TCP回显服务: examples/tcp_echo_server.c
- TCP聊天服务: examples/tcp_chat_server.c
- TCP代理服务: examples/tcp_proxy_server.c
- UDP回显服务: examples/udp_echo_server.c
- UDP代理服务: examples/udp_proxy_server.c
- SOCKS5代理服务: examples/sock5_proxy_server.c
- tinyhttpd示例: examples/tinyhttpd.c
- tinyproxyd示例: examples/tinyproxyd.c
- jsonRPC示例: examples/jsonrpc
- MQTT示例: examples/mqtt
- 多accept进程模式: examples/multi-thread/multi-acceptor-processes.c
- 多accept线程模式: examples/multi-thread/multi-acceptor-threads.c
- 一个accept线程+多worker线程: examples/multi-thread/one-acceptor-multi-workers.c
c++版本
- 事件循环: evpp/EventLoop_test.cpp
- 事件循环线程: evpp/EventLoopThread_test.cpp
- 事件循环线程池: evpp/EventLoopThreadPool_test.cpp
- 定时器: evpp/TimerThread_test.cpp
- TCP服务端: evpp/TcpServer_test.cpp
- TCP客户端: evpp/TcpClient_test.cpp
- UDP服务端: evpp/UdpServer_test.cpp
- UDP客户端: evpp/UdpClient_test.cpp
- HTTP服务端: examples/http_server_test.cpp
- HTTP客户端: examples/http_client_test.cpp
- WebSocket服务端: examples/websocket_server_test.cpp
- WebSocket客户端: examples/websocket_client_test.cpp
- protobufRPC示例: examples/protorpc
- Qt中使用libhv示例: hv-projects/QtDemo
模拟实现著名的命令行工具
- 网络连接工具: examples/nc
- 网络扫描工具: examples/nmap
- HTTP服务程序: examples/httpd
- HTTP压测工具: examples/wrk
- URL请求工具: examples/curl
- 文件下载工具: examples/wget
- 服务注册与发现: examples/consul
Tips:
- 后面教程里需要注意或容易忽略的点我都会用Tips提示;
- 另外开源创作实属不易,如果你觉得不错,别忘了在 github 上
star
下哦,让更多的人加入libhv
的开发使用,完善libhv
的网络生态。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献6条内容
所有评论(0)