🌊 Aqua Speed, 更强大、更美观的跨平台 CLI 测速工具
📜 本文目录
RefID: Q29weS1yaWdodDphcmNoaXZlcy90ZWNobm9sb2d5L2FxdWEtc3BlZWQtaW50cm9kdWN0aW9uIHwgIGhhdHMtbGFuZCBtZW51
🌟 本文配图
RefID: OiB0ZWNobm9sb2d5L2FxdWEtc3BlZWQtaW50cm9kdWN0aW9uIHwgIGhhdHMtbGFuZC1jb20gY29weXJpZ2h0
开发背景
Bun 是一款使用 Zig 语言开发的一款兼容 NodeJS 的 TypeScript 的运行时,并使用 JavaScriptCore (JSC) 作为运行引擎,相比 NodeJS + V8,Bun + JSC 编译更慢,但在冷启动速度上更胜一筹、内存占用更低。
笔者平时在使用 Speedtest.net CLI 工具时,发现其不支持 Windows 平台、安装过程较为繁琐、并且不能满足笔者使用 LibreSpeed、Cloudflare 等特殊的测速服务端的需求。
项目简介
🌊 Aqua Speed 是一款基于 Bun 和 TypeScript 开发的高性能、跨平台的测速内核,支持 Windows、macOS 和 Linux 多平台、并且支持多种测速服务端:
测速服务端 | 上传测速 | 下载测速 | 延迟测试 | 备注 |
---|---|---|---|---|
Speedtest.net | 🔶 | 🔶 | 🔶 | 开发中、高优先级 |
LibreSpeed | ✅ | ✅ | ✅ | 主要用于高校测速站 |
Cloudflare Speed | ✅ | ✅ | ✅ | speed.cloudflare.com |
单文件测速 | ❌ | ✅ | ✅ | 不支持上传测速 |
Looking Glass | 🔶 | ✅ | ✅ | 开发中 |
全球网测 (信通院) | 🔶 | 🔶 | 🔶 | 开发中 |
Speedtest.cn | 🔶 | 🔶 | 🔶 | 开发中 |
特性
- 🚀 使用 Bun.sh 高性能 JS Runtime 构建,冷启动快、内存占用低
- ⭐ 支持多种测速服务器:
- Cloudflare (下载 & 上传)
- LibreSpeed (下载 & 上传)
- Ookla (开发中)
- 自定义文件 URL (暂不支持测试上传) [^1]
- 🧵 可自由配置并发测速线程数
- 📊 可测试以下指标:
- TCP/ICMP/HTTP 延迟
- 下载/上传速度
- 抖动分析
- 🎨 美观的 CLI 界面,支持实时进度显示
- 🛡️ 完备的 TypeScript 类型支持、使用 Biome 约束代码风格
[^1]: 自定义文件 URL 暂不支持测试上传,仅支持下载、推荐指定 50MB 以上的文件。
Demo
使用教程
🌊 为了快速安装 Aqua Speed,笔者开发了 Aqua Speed Tools 安装工具,实现一键安装、自动更新 Aqua Speed。
一键脚本
# 安装并执行 Aqua Speed Tools 安装脚本
bash <(curl -fsSL https://raw.githubusercontent.com/alice39s/aqua-speed-tools/main/scripts/i.sh)
手动安装
请参阅 Aqua Speed 安装指南
更新日志
请参阅 Aqua Speed 更新日志
已知问题
跨平台问题
由于精力有限,一键脚本暂不支持 BusyBox、sh 等轻量级 Shell 环境,推荐使用 bash / zsh 等更加现代的 Shell 允许环境。
另外由于 Aqua Speed 使用 Bun 作为运行时,以下平台暂不支持:
指令集问题
由于预构建 AVX2 指令集的依赖,暂不支持缺少 AVX2 指令集的 CPU 架构。
版权声明
本文所有内容均为笔者原创,并遵循 CC BY-NC-SA 4.0 协议。
项目代码开源:
- Aqua Speed, 遵循 GPL-3.0 协议。
- Aqua Speed Tools, 遵循 AGPL-3.0 协议。