2个不稳定版本
0.2.0 | 2022年11月7日 |
---|---|
0.1.2 | 2022年9月13日 |
0.1.1 |
|
0.1.0 |
|
#6 in #dap
430KB
9K SLoC
Daphne
Daphne是DAP(分布式聚合协议)标准的Rust实现。DAP正在IETF的PPM工作组中积极开发。
Daphne目前实现了draft-ietf-ppm-dap-02。
此软件旨在支持实验性的DAP部署,并不适合在生产环境中使用。Daphne将随着DAP草案的演进而发展:在草案本身开始稳定之前,不会保证与先前草案的向后兼容性。在版本之间也应预期到破坏API的变化。
该仓库包含三个crate
-
daphne
(也称为 "Daphne") -- 实现客户端、聚合器和收集器的核心DAP协议逻辑。此crate不提供任何一方完整的功能。相反,它定义了协议具体实例化所需实现的功能的特质。我们称这些功能为 "角色"。 -
daphne_worker
(也称为 "Daphne-Worker") -- 基于Cloudflare Workers实现聚合器角色的后端。此crate还实现了DAP规范中定义的各个HTTP端点。 -
daphne_worker_test
-- 定义了本地测试Daphne-Worker的部署。它还实现了Daphne和Daphne-Worker的集成测试以及与Janus的互操作性测试。
测试
daphne
crate依赖于单元测试。《code>daphne_worker crate主要依赖于在《code>daphne_worker_test中实现的集成测试。有关在本地运行Daphne-Worker的说明,请参阅该目录中的README文件。
可以通过docker-compose运行集成测试。
docker-compose up --build --abort-on-container-exit --exit-code-from test
致谢
感谢Yoshimichi Nakatsuka,他在Cloudflare Research实习期间对Daphne做出了重大贡献。感谢Brandon Pitman和David Cook进行测试、报告错误和发送补丁。
“Daphne”这个名字归功于Cloudflare Research实习生Tim Alberdingk Thijm和James Larisch,他们独立想出了这个名字。
依赖关系
~26–42MB
~737K SLoC