#cloudflare #assignment #systems #profile #response #engineering #solution

app cloudflare-systems-assignment

Rust语言实现的解决Cloudflare系统工程作业的方案

4个版本

0.2.2 2020年10月18日
0.2.1 2020年10月18日
0.2.0 2020年10月18日
0.1.0 2020年10月18日

#17 in #assignment

每月 24 次下载

MIT 许可证

220KB
197

系统作业 🦀 crates.io status status

先决条件

  • 使用 git clone https://github.com/tarikeshaq/cloudflare-2020-systems-engineering-assignment 复制仓库 ⬇️
  • 你需要安装Rust,最佳方式是使用 rustuphttps://rustup.rs/
  • 就是这样!

如何运行

这个crate已经发布在crates.io上,因此你可以从那里获取,但是如果你想在本地运行,只需运行

cargo run -- --url <URL> --profile <NUMBER>

(注意,你也可以添加 --release 标志来运行crate的优化版本)

它将向 URL 发送 NUMBER 个HTTP GET请求,并展示结果。

查看响应

除了性能数据外,如果你还想看到请求的响应,只需省略 --profile。我选择在性能分析时不显示响应,因为这会只让stdout变得混乱。

例如,如果你运行 cargo run -- --url https://tarikeshaq.tarikesh.workers.dev/links,它将打印出响应

示例输出

  • 在运行 cargo run --release -- --url https://tarikeshaq.tarikesh.workers.dev/links --profile 10 时:针对 Cloudflare 运行请求的配置文件
  • 在运行 cargo run --release -- --url https://aws.random.cat/meow --profile 10 针对随机猫图像运行请求的配置文件

看起来 Cloudflare 网站非常快 🥳

许可证

这是一个解决 Cloudflare 附加作业的项目,因此使用相同的许可证。请在 LICENSE 中查看。

依赖项

~5.5–8MB
~153K SLoC