英文原文: https://argusic.com/subject/rqlite

rqlite

基于 SQLite 的轻量级、容错数据库,旨在以最小的努力保持数据的高可用性。

可运行来源:GitHub项目主页GoMITcommit 7eb7e54b14df

Go,MIT 许可证. 项目的自我描述:consensus、database、distributed database、distributed systems、fault tolerance、go、high availability 和 raft.

rqlite 可以运行。一个 Argusic agent 在一台没有 GPU 的干净机器上用 16.4 分钟完成了安装,遇到 7 个错误,并在无人协助的情况下全部修复,整个会话都被记录了下来。

rqlited is running on 127.0.0.1:44001, its HTTP endpoints return 200, and the built binary serves persisted SQL rows while the Go unit/integration suite and 15 single-node E2E tests pass.

agent 在干净的机器上最终得到的结果,用它自己的话说。 测量方式

每一次都由 Argusic 在全新机器上实测。每个数字都链接到对应的证据。 Argusic 评分 100,满分 100(该项目各次运行得分的平均值)。

概览

结论
可运行
Argusic 评分
100 / 100
验证运行的成本
0.15 USD(实测)
已记录的运行次数
2
最近测试
星标
17,915
fork 数
823
未关闭的 issue
71
关注者
217
大小
13 MB
创建于
最近推送

项目数据来自 GitHub,链接见本页顶部,更新于 。测试数据由 Argusic 提供 (CC BY 4.0);每个数字都链接到一个运行页面,附完整的 log、录屏及其 sha256 哈希。

测量了什么

来自决定该结论的那次运行。 每一行都是记录下来的数值,而非估算。

测试 rqlite 时每个故障耗费的时间,取自已记录的运行
每一根柱子都是 agent 记录的一次失败,以及它耗费的时间。数据仅取自本次运行。

哪里出了问题,用 agent 自己的话说

agent 的原话,最严重的排在最前,从不改写成建议。

  • `Test_Geopoly` failed because its expected JSON hardcoded `\ufffd` while Go 1.27.3 encoded the same replacement character as literal UTF-8.8 分钟
  • Go toolchain was not installed or on PATH; `go version` returned `go: not found`, blocking the documented `go install ./...` workflow.2 分钟
  • The first rqlited verification process exited when its launching command session ended, so curl and rqlite received connection failures.2 分钟
  • The first single-node E2E run had two FileNotFoundError errors for system_test/e2e/testdata/1000-numbers.db.2 分钟
  • Python requests was missing, preventing the bundled system_test/e2e suite from importing helpers.1 分钟
  • `/usr/bin/time` was unavailable while timing the install (`/usr/bin/time: No such file or directory`).
安装时间
16 分钟
从冷启动机器到完成
17 分钟
遇到并修复的错误
遇到 7 个,在无人协助的情况下修复了 7 个
结果是如何证明的
go install ./... exited 0 in 91s; rqlited -version printed 'rqlited 10 linux amd64 go1.27.3 sqlite3.53.4 (commit unknown, compiler gc)'; go test -count=1 -timeout 20m -json ./... exited 0 with 1826 passed, 4 skipped, 0 failed across 49 packages; go vet ./... exited 0; python3 system_test/e2e/single_node.py exited 0 with 'Ran 15 tests ... OK'; curl POST /db/execute returned 200 and GET /db/query returned 200 with rows [[1,fiona],[2,declan],[3,clara]]; /readyz, /status, and /console/ each returned 200.
使用的模型 token
385,460
测试的确切 commit
7eb7e54b14df
容器镜像
sha256:cdd920bce783

没有测量什么

另一半内容,让你清楚看到这些证据能说明到什么程度。缺失的数据就标为缺失,从不填补。

GPU 显存峰值
本次运行在 CPU 机器上进行,没有可采样的 GPU
长时间运行的表现
每次尝试都使用文档中最小的设置和固定的时间预算,因此这里测量的是它能否运行,而不是它在负载下的表现

观看会话

完整的运行过程,从一台干净的机器开始,按实际速度播放。没有剪辑,也没有加速。

第 1 次尝试的录屏,运行于 。上述结论来自另一次尝试,因此请把这段视频当作一次会话来看,而不是当前的结果。 制作该视频所用的终端录屏是证据,连同 sha256 指纹一起保存;视频只是由它渲染而成。 在你点击播放之前,不会从视频托管方加载任何内容。

录屏的结尾

决定该结论的终端会话的最后几行,与录制时完全一致。

 \"final_state\":\"rqlited is running on 127.0.0.1:44001, its HTTP endpoints return 200, and the bu…
}
print(json.dumps(result,separators=(',',':')))
PY" in /work/repo
 succeeded in 0ms:
{"install_succeeded":true,"launch_succeeded":true,"install_minutes":16.4,"errors":[{"msg":"Go toolc…
Installed and verified rqlite end to end. The full Go suite passed with 1,826 tests, 4 skips, and 0…
The only repository change is `db/db_common_test.go:1`, replacing a brittle escaped-JSON string com…
tokens used
385,460
Installed and verified rqlite end to end. The full Go suite passed with 1,826 tests, 4 skips, and 0…
The only repository change is `db/db_common_test.go:1`, replacing a brittle escaped-JSON string com…

回放完整会话,从干净的机器到此刻的每一条命令。

测试方式

一个 agent,一个容器,没有人工协助。它按照项目自身文档所写的方式安装项目,运行它,并修复出错的地方。下面的一切都按实际发生的过程记录:终端会话、log 和确切的 commit。 完整方法论.

优势与局限

均为实测事实,而非观点。内容是如何撰写的.

顺利的部分

  • 在干净的机器上达到了运行状态,会话有完整记录。
  • 用 16.4 分钟完成安装。
  • 在无人介入的情况下从全部 7 个错误中恢复,说明这些故障的文档足以让人解决。
  • 无需 GPU 即可运行,因此启动它并不需要 GPU。
  • 采用 MIT 许可证,以其托管平台报告的信息为准。
  • 已测量 2 次,因此结果并非偶然。

适合用于

  • 在笔记本电脑或小型服务器上试用:它无需 GPU 即达到了运行状态。

同一领域中也测试过的项目

这里的每个项目都由 Argusic 在干净的机器上安装并运行过。未经测试的项目不会出现在这里。

运行历史

测试者尝试结果评分成本 USD时间
Argusic Runner2/3可运行100.000.15
Argusic Runner1/3可运行100.000.07

主题 (来自 GitHub)

consensusdatabasedistributed-databasedistributed-systemsfault-tolerancegohigh-availabilityraftrelational-databasesqlsqlite

嵌入徽章

用于项目 README 的 Markdown。徽章链接回本页;使用条款见 条款页面.

[![Tested by Argusic](https://argusic.com/badge/rqlite.svg)](https://argusic.com/subject/rqlite)

常见问题

rqlite 能运行吗?
是的。rqlite 可以运行. Argusic 在一台干净的机器上安装并启动了它,用时 16 分钟,过程中遇到 7 个错误,并记录了整个会话。
Argusic 是如何测试 rqlite 的?
在一台全新的一次性机器上进行,每条命令都被记录,仓库固定在 commit 7eb7e54b14df。共记录了 2 次尝试,完整方法见方法论页面。
测试 rqlite 花了多少钱?
得出该结论的那次运行花费 0.15 USD:这是真实的算力和模型成本,而不是按每百万 token 计的标价。该数字记录在那次运行的页面上。
rqlite 安装需要多长时间?
在决定该结论的那次运行中,从干净的机器到运行状态用了 16.4 分钟。这是一次实测的尝试,不是平均值。
rqlite 需要 GPU 吗?
启动它不需要。Argusic 在一台没有 GPU 的机器上让它达到了运行状态。
安装 rqlite 时会出现什么问题?
已记录的运行中出现了 7 个问题,其中 7 个在无人协助的情况下被修复。每个问题及其耗费的时间都列在本页上。
rqlite 的证据在哪里?
全部 2 次已记录的运行都在本页上,每次都链接到完整的 log 和终端录屏,并连同 sha256 指纹一起保存,因此无法被悄悄篡改。

Discussion