🌊 Aqua Speed, 更强大、更美观的跨平台 CLI 测速工具#

📜 本文目录

RefID: Q29weS1yaWdodDphcmNoaXZlcy90ZWNobm9sb2d5L2FxdWEtc3BlZWQtaW50cm9kdWN0aW9uIHwgIGhhdHMtbGFuZCBtZW51

🌟 本文配图 ![Aqua Speed 文章配图](/images/archives/aqua-speed-introduction.png)

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 Speedspeed.cloudflare.com
单文件测速不支持上传测速
Looking Glass🔶开发中
全球网测 (信通院)🔶🔶🔶开发中
Speedtest.cn🔶🔶🔶开发中

特性#

  • 🚀 使用 Bun.sh 高性能 JS Runtime 构建,冷启动快、内存占用低
  • ⭐ 支持多种测速服务器:
    • Cloudflare (下载 & 上传)
    • LibreSpeed (下载 & 上传)
    • Ookla (开发中)
    • 自定义文件 URL (暂不支持测试上传) 1
  • 🧵 可自由配置并发测速线程数
  • 📊 可测试以下指标:
    • TCP/ICMP/HTTP 延迟
    • 下载/上传速度
    • 抖动分析
  • 🎨 美观的 CLI 界面,支持实时进度显示
  • 🛡 完备的 TypeScript 类型支持、使用 Biome 约束代码风格

Demo#

使用教程#

🌊 为了快速安装 Aqua Speed,笔者开发了 Aqua Speed Tools 安装工具,实现一键安装、自动更新 Aqua Speed。

一键脚本#

BASH
# 安装并执行 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 作为运行时,以下平台暂不支持:

  • 不支持 Windows ARM 平台 - Bun Issue
  • 暂不支持 Alpine Linux 平台(缺少 GCC 编译依赖链) - Bun Issue

指令集问题#

由于预构建 AVX2 指令集的依赖,暂不支持缺少 AVX2 指令集的 CPU 架构。

版权声明#

本文所有内容均为笔者原创,并遵循 CC BY-NC-SA 4.0 协议。

项目代码开源:


脚注

  1. 自定义文件 URL 暂不支持测试上传,仅支持下载、推荐指定 50MB 以上的文件。