10个版本

0.1.9 2024年2月22日
0.1.8 2024年2月22日

630数据库接口

Download history 5/week @ 2024-05-16 6/week @ 2024-05-23 3/week @ 2024-05-30 5/week @ 2024-06-06 1/week @ 2024-06-13 2/week @ 2024-06-20 7/week @ 2024-06-27 59/week @ 2024-07-04 2/week @ 2024-07-11 4/week @ 2024-07-18 56/week @ 2024-07-25

每月 下载 125

MIT 许可证

38KB
711

马赫网Rust绑定

Crates.io Docs.rs Build GitHub License

此仓库包含马赫网的Rust FFI绑定。

马赫网提供了一种简单的方式,通过内核旁路(基于DPDK的消息传递)来降低应用程序的数据中心网络延迟。分布式应用程序(如数据库和金融)可以使用马赫网作为网络库,以获得低于100微秒的尾部延迟,例如,在Azure F8s_v2虚拟机上,每秒750,000个1KB请求-回复消息,P99.9往返延迟为61微秒。

我们支持各种云(Azure、AWS、GCP)和裸机平台、操作系统和网络接口卡,详情请参阅 PERFORMANCE_REPORT.md

先决条件

clang 是构建Rust绑定的必需品。您可以使用以下命令安装它

sudo apt-get update && sudo apt-get install -y clang

它还要求系统上已构建和安装了 libmachnet_shim.so。您可以在 Machnet 仓库中查看详细信息。使用 build_shim.sh 自动构建和安装 libmachnet_shim.so 库。

入门

要使用Machnet Rust绑定,请将以下内容添加到您的 Cargo.toml

[dependencies]
machnet = "0.1.9"

演示

我们有一个简单的 msg_gen 应用程序,它使用Machnet堆栈。这是一个消息生成应用程序,它向服务器发送可变大小的消息并接收它们。

对于1千字节的消息大小,Rust和C++的延迟几乎相同,分别为53和52微秒,表明它们的性能相当且快速。

开源项目

本项目是微软的一个开源倡议。我们欢迎社区贡献和建议!请参阅CONTRIBUTING.md获取更多详情。

Microsoft

无运行时依赖

~0–1.8MB
~36K SLoC