#cli #url #async #status #parallel #checker #s-tatus

app faust

快速异步 URL 状态检查器

3 个稳定版本

1.0.2 2022年6月28日
1.0.1 2021年8月23日

#47#checker

21 每月下载量

MIT 许可证

13KB
84 代码行

Faust - 快速异步 URL 状态

Faust 向大量 HTTP URL 发送 HEAD 请求,并以 TSV 格式输出 HTTP 响应代码。

Faust 是一个基于 reqwesttokio 的 Rust 程序(小于100行)。它可以轻松扩展到数万并发的请求,即使在普通机器上也能每秒处理数千个请求。

构建

如果您已安装 Rust 和 Cargo

$ cargo install faust

运行

$ time faust <<EOF
> http://www.google.com
> https://www.google.com
> http://github.com
> https://github.com
> http://cloudflare.com
> https://cloudflare.com
EOF
http://cloudflare.com/  301 https://www.cloudflare.com/
http://github.com/      301 https://github.com/
http://www.google.com/  200 OK
https://cloudflare.com/ 301 https://www.cloudflare.com/
https://github.com/     200 OK
https://www.google.com/ 200 OK

real    0m0.100s
user    0m0.005s
sys     0m0.009s

注意事项

Faust 可以轻松扩展到数万个连接,但需要足够的文件描述符。如果因为此原因拒绝运行,您可能需要调整 /etc/security/limits.* 中的限制。

如果您位于 NAT 后面,如此大量的连接可能会导致廉价的家用路由器崩溃或严重降低其性能。

依赖项

~8–20MB
~303K SLoC