#[macro_use]
extern crate timeit;
fn main() -> Result<(), Box<dyn std::error::Error>> {
timeit!({
let _ = reqwest::blocking::get("http://localhost/")?
.text()?;
});
Ok(())
}
use chttp::prelude::*;
#[macro_use]
extern crate timeit;
fn main() -> Result<(), Box<dyn std::error::Error>> {
timeit!({
let _ = chttp::get("http://localhost/")?
.text()?;
});
Ok(())
}
import requests
%timeit requests.get('http://localhost/').text
输出:
reqwest 10 loops: 40.283526 ms
chttp 1000 loops: 264.017153 µs
requests 1.56 ms ± 27 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
reqwest 换成 http1.0 协议也不变
localhost 是本地 nginx
这性能比 python requsts 都慢了几十倍,有点夸张
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.