glommio
加入我们的Zulip社区!
如果你对Glommio感兴趣,可以考虑加入我们的Zulip社区。告诉我们你正在构建的令人兴奋的应用程序,寻求帮助,或者只是与朋友聊天😃
Glommio是什么?
Glommio(发音为glo-mee-jow或|glomjəʊ|)是一个基于io_uring
的Rust & Linux协作式每核心一线程的crate。与其他Rust异步crate一样,它允许编写利用Rust async
/await
的异步代码,但与其他crate不同的是,它在任何地方都不使用辅助线程。
如果你熟悉Rust异步编程,使用Glommio并不困难。你只需要:
use glommio::prelude::*;
LocalExecutorBuilder::default().spawn(|| async move {
/// 在这里编写你的异步代码
})
.expect("无法生成本地执行器")
.join();
支持的Rust版本
Glommio基于最新的稳定版本构建。最低支持版本为1.65。当前Glommio版本不保证能在早于最低支持版本的Rust版本上构建。
支持的Linux内核
Glommio需要具有足够新的io_uring
支持的内核,至少要新到足以运行发现探测。目前的最低版本是5.8。
请注意,Glommio需要至少512 KiB的锁定内存才能使io_uring
工作。你可以按以下方式增加memlock
资源限制(rlimit):
$ vi /etc/security/limits.conf
* hard memlock 512
* soft memlock 512
请注意,512 KiB是生成单个执行器所需的最小值。生成多个执行器可能需要你相应地提高限制。
要使新限制生效,你需要重新登录机器。你可以通过运行以下命令来验证限制是否已更新:
$ ulimit -l
512
贡献
参见贡献指南。
许可证
根据以下两种许可证之一授权
- Apache许可证2.0版(LICENSE-APACHE或http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证(LICENSE-MIT或http://opensource.org/licenses/MIT)
由你选择。