libhv教程10 建立乙個簡單的HTTP服務端

2021-10-19 21:33:30 字數 3405 閱讀 6826

http協議作為本世紀最通用的應用層協議,本文就不加以介紹了,不熟悉的自行閱讀awesome-http

示例**參考examples/http_server_test.cpp

}編譯執行:

bin/http_server_test測試使用curl或瀏覽器輸入以下url

curl -v 

curl -v

curl -v

curl -v -d "hello,world"

完整的http服務端示例**參考examples/httpd

測試步驟:

bin/curl -v -x delete localhost:8080/group/test/user/123使用apacheab、或者wrk都可以用來做壓力測試,一般伺服器單執行緒qps可輕鬆達到3w

# sudo apt install apache2-utils

ab -c 100 -n 100000

# sudo apt install wrk

wrk -c 100 -t 4 -d 10s

更多http壓力測試工具參考awesome-http-benchmark

// 同步handler

// 非同步handler

// 類似nodejs koa的ctx handler

> http_handler;

因為歷史相容原因,同時保留支援以上三種格式的handler,使用者可根據自己的業務選擇合適的handler,如果使用的較新版libhv,推薦使用帶httpcontext引數的http_handler

三種handler的等同寫法見:

// 同步handler

// 非同步handler

});// 帶httpcontext引數的handler是相容同步/非同步handler的最新寫法,推薦使用

libhv教程06 建立乙個簡單的TCP服務端

下文以tcp echo server為例,使用libhv建立tcp服務端。include hv hloop.h void on close hio t io void on recv hio t io,void buf,int readbytes void on accept hio t io in...

libhv教程04 編寫乙個完整的命令列程式

首先,乙個完整的命令列程式應該包含哪些功能?看看libhv是如何提供這些功能的,參考示例 見examples hmain test.cpp 編譯執行 c std c 11 examples hmain test.cpp o bin hmain test i usr local include hv ...

乙個PDDL簡單教程

照例mark一下學習收穫 我的理解是,這是乙個strips的模型實現語言 pddl planner plan 對於strips來說,包含的元素有 p predicates f fluents facts i only one initial state g a set of goal states ...