【Rust日报】2021-09-22 kbio基于io_uring的异步 IO 框架

本文介绍了kbio,一个基于io_uring的高性能异步IO框架,支持多线程并发任务提交。kbio被用于KuiBaDB,一个OLAP分析专注的PostgreSQL重写版,以及Robyn,一个异步Python后端HTTP服务运行时。KuiBaDB利用列式存储和kbio进行IO操作,而Robyn则在Rust异步运行时上运行Python服务。
摘要由CSDN通过智能技术生成

kbio基于io_uring的异步 IO 框架

  • 支持多线程并发任务提交。

  • 很快。

  • 实现在 tokio 中引入的 AsyncRead/AsyncWrite trait。

ReadMore:https://github.com/KuiBaDB/kbio

Blog:https://blog.hidva.com/2021/09/14/kbio/

KuiBaDB

KuiBaDB是另一个用Asynchronous Rust重写的PostgreSQL,KuiBaDB专注于 OLAP 分析。

KuiBaDB建立在kbio和tokio之上。只用 tokio 的“rt-multi-thread”、“rt”和“io-util”功能。所有 IO,包括文件 IO 和网络 IO,以及异步系统调用都由kbio提供支持。

KuiBaDB使用矢量化引擎,也是目录驱动的。KuiBaDB使用了Hologres 中引入的列式存储。但是我删除了Delete Map并为每行添加了xmin,xmax,xmin/xmax保存在行存储中。

ReadMore:https://github.com/KuiBaDB/KuiBaDB

Robyn

Robyn 是一个由用 Rust 编写的异步 Python 后端HTTP服务运行时。

在 Rust 异步运行时之上运行的 Python 服务。

安装
pip install robyn
用法
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Mac Rust io-uring是一种在Mac操作系统上使用Rust语言进行开发的io-uring库。 io-uring是Linux内核中的一个新特性,它为应用程序提供了一种高性能、高效率的异步I/O操作方式。它通过使用事件驱动和无锁技术,实现了在高并发环境下进行文件操作的优化。io-uring提供了更低的系统开销和更高的吞吐量,特别适用于需要大量I/O操作的应用程序。 虽然io-uring最初是为Linux内核设计的,但由于其高性能的特性,一些开发者试图将其移植到其他操作系统上。其中,Mac Rust io-uring就是一个在Mac操作系统上使用Rust语言实现io-uring的库。 使用Mac Rust io-uring,开发者可以在Mac环境下利用io-uring的特性来提高文件操作的性能。这对于需要进行大量I/O操作的应用程序来说,是一个很有价值的工具。例如,对于数据库、Web服务器或文件传输等应用,通过使用Mac Rust io-uring,可以显著提高其性能和吞吐量。 Mac Rust io-uring不仅提供了对io-uring的封装,还提供了一些更高级别的功能和接口,以方便开发者使用。开发者可以使用Mac Rust io-uring来实现一些高级的文件操作,例如批量读取或写入文件,提高数据处理的效率。 总之,Mac Rust io-uring是一个在Mac操作系统上使用Rust语言开发的io-uring库,它能够为开发者提供高性能的异步I/O操作方式,从而提高应用程序的性能和吞吐量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值