本文于 2026-03-19 08:13 更新,部分内容具有时效性,如有失效,请留言
很多时候我只想测一下网络,看到别人用这个0.1.116版本,就拿了过来,项目github地址;
一键命令将默认不安装依赖,默认不更新包管理器,默认非互动模式
-
国际用户无加速:
export noninteractive=true && curl -L https://raw.githubusercontent.com/oneclickvirt/ecs/master/goecs.sh -o goecs.sh && chmod +x goecs.sh && ./goecs.sh install && goecs
-
国际/国内使用 CDN 加速:
export noninteractive=true && curl -L https://cdn.spiritlhl.net/https://raw.githubusercontent.com/oneclickvirt/ecs/master/goecs.sh -o goecs.sh && chmod +x goecs.sh && ./goecs.sh install && goecs
-
国内用户使用 CNB 加速:
export noninteractive=true && export CN=true && curl -L https://cnb.cool/oneclickvirt/ecs/-/git/raw/main/goecs.sh -o goecs.sh && chmod +x goecs.sh && ./goecs.sh install && goecs
-
短链接:
export noninteractive=true && curl -L https://bash.spiritlhl.net/goecs -o goecs.sh && chmod +x goecs.sh && ./goecs.sh install && goecs
或
export noninteractive=true && curl -L https://ba.sh/JrVa -o goecs.sh && chmod +x goecs.sh && ./goecs.sh install && goecs
如果需要测试更准确,请按照下面的详细说明进行安装,添加非必需的依赖
以下命令可控制是否安装依赖,是否更新包管理器,互动模式和非交互模式
展开查看编译说明
- 克隆仓库的 public 分支(不含私有依赖)
git clone -b public https://github.com/oneclickvirt/ecs.git
cd ecs
- 安装 Go 环境(如已安装可跳过)
选择 go 1.25.4 的版本进行安装
curl -L https://cdn.spiritlhl.net/https://raw.githubusercontent.com/spiritLHLS/one-click-installation-script/main/install_scripts/go.sh -o go.sh && chmod +x go.sh && bash go.sh
- 编译
go build -o goecs
- 运行测试
./goecs -menu=false -l zh
支持的编译参数:
- GOOS:支持 linux、windows、darwin、freebsd、openbsd
- GOARCH:支持 amd64、arm、arm64、386、mips、mipsle、s390x、riscv64
跨平台编译示例:
# 编译 Windows 版本
GOOS=windows GOARCH=amd64 go build -o goecs.exe
# 编译 MacOS 版本
GOOS=darwin GOARCH=amd64 go build -o goecs_darwin
QA
Q: 为什么默认使用sysbench而不是geekbench
A: 比较二者特点
| 比较项 | sysbench | geekbench |
|---|---|---|
| 适用范围 | 轻量级,几乎可在任何服务器上运行 | 重量级,小型机器无法运行 |
| 测试要求 | 无需网络,无特殊硬件需求 | 需联网,IPV4环境,至少1G内存 |
| 开源情况 | 基于LUA,开源,可自行编译各架构版本 | 官方二进制闭源代码,不支持自行编译 |
| 测试稳定性 | 核心测试组件10年以上未变 | 每个大版本更新测试项,分数不同版本间难以对比(每个版本对标当前最好的CPU) |
| 测试内容 | 仅测试计算性能 | 覆盖多种性能测试,分数加权计算,但部分测试实际不常用 |
| 适用场景 | 适合快速测试,仅测试计算性能 | 适合综合全面的测试 |
| 排行榜 | sysbench.spiritlhl.net | browser.geekbench.com |
且goecs测试使用何种CPU测试方式可使用参数指定,默认只是为了更多用户快速测试的需求
Q: 为什么使用Golang而不是Rust重构
A: 因为网络相关的项目目前以Golang语言为趋势,大多组件有开源生态维护,Rust很多得自己手搓,我懒得搞我没那个技术力
Q: 为什么不继续开发Shell版本而是选择重构
A: 因为太多千奇百怪的环境问题了,还是提前编译好测试的二进制文件比较容易解决环境问题(泛化性更好)
Q: 每个测试项目的说明有吗?
A: 每个测试项目有对应的维护仓库,自行点击查看仓库说明
Q: 测试进行到一半如何手动终止?
A: 按ctrl键和c键终止程序,终止后依然会在当前目录下生成goecs.txt文件和分享链接,里面是已经测试到的信息。
Q: 非Root环境如何进行测试?
A: 手动执行安装命令,实在装不上也没问题,直接在release中下载对应架构的压缩包解压后执行即可,只要你能执行的了文件。或者你能使用docker的话用docker执行。









