首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Rust语言学习交流

    【翻译】withoutboats 的 io-uring 笔记

    原文: Notes on io-uring 地址: https://boats.gitlab.io/blog/post/io-uring/ 时间: 2020-05-06 作者: Withoutboats 这篇文章假定你对 io-uring API 有一定了解。这个文档(https://kernel.dk/io_uring.pdf)提供了关于 io-uring 的高级概述。 现在有很多人在 io-uring 中寻找类似文件系统 IO 之类的东西,在该处阻塞 IO 似乎是合理的。但是 io-uring 是 Linux 上所有 IO 的未来,包括网络 IO。 还有更多有趣的问题 所以我觉得这就是我们都应采用并继续为之努力的解决方案:由 io-uring 控制 buffer,io-uring 上最快的接口就是 缓冲接口(buffered interfaces) 我们应该仅对文件系统 IO 进行 io-uring 并等待 epoll 实例完成,还是将所有内容移至 io-uring?我们如何与仍在使用 epoll 的库集成在一起?

    95620发布于 2020-07-22
  • 来自专栏Rust语言学习交流

    【Rust日报】2021-04-09 tokio 计划发布基于 io-uring 的新运行时

    tokio-uring - tokio 基于 io-uring 版的异步运行时 tokio 今天发布了新的 RFC,提出了新的支持 io-uring 异步运行时的计划。 比较io-uring与epoll的benchmark会发现提升还是很显著的;一个TCP echo客户端和服务器显示出高达60%的改进。 虽然还没有测试过,但使用io-uring代替Tokio的线程池策略将会显著的改善 IO 操作。 由于io-uring与epoll有很大的不同,Tokio必须提供一套新的API来充分利用减少的开销。 此外,io-uring API还在不断发展,计划在不久的将来推出新功能。 与其等待io-uring的成熟和Tokio 2.0的发布,tokio 将发布一个独立的 crate,专门用于暴露io-uring的API。

    1.2K10发布于 2021-04-22
  • 来自专栏深度学习与python

    字节开源 Monoio :基于 io-uring 的高性能 Rust Runtime

    为了这个目标,CloudWeGo Rust Team 探索基于 io-uring 为 Rust 提供异步支持,并在此基础上研发通用网关。 第二种是 io-uring 的模式,它是一个基于“完成通知”的模式。  在基于就绪状态的模式下,任务会通过 epoll 等待并感知 IO 就绪,并在就绪时再执行 syscall。

    1.4K20编辑于 2023-04-21
  • 来自专栏Rust 编程

    Rust生态安全漏洞总结系列 Part 4 | 请用 time 代替 chrono

    发现这个漏洞的是 `tokio-rs/io-uring`[6] 作者 quininer。 internals.rust-lang.org/t/synchronized-ffi-access-to-posix-environment-variable-functions/15475 [6] tokio-rs/io-uring : https://github.com/tokio-rs/io-uring [7] no time for chrono: https://passcod.name/technical/no-time-for-chrono.html

    1.7K30发布于 2021-11-10
  • 来自专栏Rust语言学习交流

    【大家的项目】helyim: 纯 Rust 实现的分布式对象存储系统

    Failover 功能 冗余数据的定时删除 元数据接口的请求重定向 未来可能实现的功能: 支持纠删码(高优先级) 支持 Filer 服务(高优先级,以支持 S3,HDFS,Fuse 等 proxy) 支持 io-uring

    1.1K10编辑于 2024-01-12
  • 来自专栏Rust语言学习交流

    【Rust日报】2020-10-02 移动操作系统SailfishOS支持Rust了

    https://www.abetterinternet.org/careers/le-sre-sw2/ 深入了解Ringbahn的drivers Ringbahn是无船同志(without boats)基于io-uring

    52040发布于 2020-10-23
  • 【翻译】Crimson:用于多核可扩展性的下一代 Ceph OSD

    不要还没说基础过,本质一样, The complexity and nuanced control to adopt different I/O stacks (such as epoll, linux-aio, io-uring 采用不同 I/O 堆栈(如 epoll、linux-aio、io-uring、DPDK 等)的复杂性和细微控制对应用程序代码是透明的。 疑问:什么意思 ,用户不用管只调用相关接口 Seastar 在内部会根据内核版本和配置,自动选择使用 linux-aio、io-uring 或者回退到基于 epoll 的异步实现。 Seastar 内部可基于 DPDK(在配置启用时)或内核 epoll/io-uring 实现高性能用户态/内核态 I/O。

    45200编辑于 2025-06-08
  • 来自专栏B‘s Study Notes

    Dragonfly安装&配置 Redis和Memcached的现代替代品

    它使用相对较新的Linux特定io-uring API进行I / O,因此它需要Linux版本5.10或更高版本。Debian/Bullseye,Ubuntu 20.04.4或更高版本符合这些要求。

    11.9K00编辑于 2022-06-03
  • Rust 是否应该增容标准库?

    openssl-sys 要链接、ring 要折腾目标三元组、tokio 的 mio 还得处理不同架构的 io-uring

    8010编辑于 2026-04-16
  • 【翻译】Crimson:用于多核可扩展性的下一代 Ceph OSD

    不要还没说基础过,本质一样,The complexity and nuanced control to adopt different I/O stacks (such as epoll, linux-aio, io-uring , DPDK, etc) are transparent to the application code.采用不同 I/O 堆栈(如 epoll、linux-aio、io-uring、DPDK 等)的复杂性和细微控制对应用程序代码是透明的 疑问:什么意思 ,用户不用管只调用相关接口Seastar 在内部会根据内核版本和配置,自动选择使用 linux-aio、io-uring 或者回退到基于 epoll 的异步实现。 Seastar 内部可基于 DPDK(在配置启用时)或内核 epoll/io-uring 实现高性能用户态/内核态 I/O。

    50800编辑于 2025-05-30
  • 来自专栏sunsky

    Linux高性能IO网络模型对比分析:Reactor vs Proactor

    Unix/Linux系统对纯异步的支持有限,应用事件驱动的主流还是通过select/epoll来实现, 另外, Linux支持 AIO吧实现上是模拟多线程依然问题很多, 直到最近Kernel 5.1的 io-uring

    4.6K30发布于 2021-01-06
  • 来自专栏C++ 动态新闻推送

    C++ 动态新闻推送 第20期

    实现的类似go语法的嵌入式脚本语言 https://github.com/soasis/text 实现了text encoding https://github.com/robn/yoctochat 一个用io-uring

    82920发布于 2021-08-31
  • 来自专栏深度学习与python

    我们为什么选 Rust 重写核心服务?

    我们也希望看到围绕 io-uring 的工作带来巨大的性能改进,同时不至于造成生态系统的进一步分裂。 在工具链方面,Cargo 和 Rustup 大大简化了设置和编译项目的工作。

    85820编辑于 2023-04-01
  • 来自专栏Rust语言学习交流

    我们为什么选 Rust 重写核心服务?

    我们也希望看到围绕 io-uring 的工作带来巨大的性能改进,同时不至于造成生态系统的进一步分裂。 在工具链方面,Cargo 和 Rustup 大大简化了设置和编译项目的工作。

    96420发布于 2021-07-16
  • 来自专栏Rust 编程

    2021 年 Rust 生态版图调研报告 | 星辰大海(下篇)

    其他活跃维护的库和框架 上篇介绍过 monoio[53],是字节跳动开源的一个基于 io-uring 的 Thread-per-core 模型的异步 Runtime,详细介绍参见:《Rust 异步运行时的设计与实现 Glommio[55],是 DataDog 开源的另一款 基于 io-uring 的 Thread-per-core 模型的异步 Runtime ,目前该作者已经自己创业。

    2.3K10编辑于 2022-01-23
  • 来自专栏Rust 编程

    2021 年 Rust 生态调研报告 | 星辰大海 【上篇】

    其中比较出色的可用于云原生项目的有: monoio[64],是一个基于 io-uring 的 Thread-per-core 模型的异步 Runtime,详细介绍参见:《Rust 异步运行时的设计与实现

    2.2K20编辑于 2022-01-23
领券