state-threads用來模擬超級併發,並簡化非同步socket的邏輯為同步socket,http-parser解析http協議部分。
這兩個庫設計都很巧妙,所以我開了乙個專案:
state-threads之前就有寫過文章說明,那時候主要是支援高併發的rtmp伺服器,也是併發和非同步變為同步的協程很方便。
http-parser用yum就可以search到,它其實設計得也相當巧妙,相當於只是解析buffer的http內容,並不負責網路部分。libcurl/poco等都帶了網路處理,所以不合適。
舉例說明,http_parser_parse_url這個函式,解析url,設計得非常有意思,不是返回字串,而是返回位置索引,譬如主機頭在什麼位置長度多長等等。
提供了url_parser這個示例程式。
另外,還有個例子是nginx大牛igor寫的,parsetrace.c:
[cpp]view plain
copy
就是讀取檔案,然後用http-parser解析。
這個工具寫完,支援http檔案和hls兩種負載測試。
對比下**行數:
對比httpload,只能做http檔案測試的工具:
當ts檔案位元速率為400kbps時,乙個程序能開10000連線。http load只能開1024每程序。
效率大約是http-load的10倍,若進行小檔案測試,可以到100倍以上。
單程序開啟1k連線,不sleep取完乙個接著取下乙個,能將虛擬機器的回環網絡卡頻寬請求到8gbps,1cpu的虛擬機器。
基本上這個工具用來做http測試模擬大併發足夠了。
HTTP HLS RTMP超級負載測試工具
state threads用來模擬超級併發,並簡化非同步socket的邏輯為同步socket,http parser解析http協議部分。這兩個庫設計都很巧妙,所以我開了乙個專案 state threads之前就有寫過文章說明,那時候主要是支援高併發的rtmp伺服器,也是併發和非同步變為同步的協程很...
壓力測試工具
webbench最多可以模擬3萬個併發連線去測試 的負載能力,比apache自帶的ab壓力測試工具好,安裝使用也特別方便。1 適用系統 linux 2 編譯安裝 引用 wget tar zxvf webbench 1.5.tar.gz cd webbench 1.5 make make instal...
http load測試工具
基於linux平台的一種效能測工具。以並行復用的方式執行,用以測試web伺服器的吞吐量與負載,測試web頁面的效能。優點1.基於命令列,簡單 易於上手 2.小巧輕便,解壓縮後不到100k 3.開源,免費 缺點1.僅適用於web頁面的效能測試,不適用於訪問資料庫 2.測試結果分析有限 3.平台依賴li...