• 【Rust日报】2022-08-06 Fang, Rust的一个异步后台处理


    Fang, Rust的一个异步后台处理

    尽管 Rust 的第一个稳定版本于 2015 年发布,但其生态系统中仍然存在一些用于解决常见任务的缺失。其中之一是后台处理。

    在软件工程中,后台处理是解决几个问题的常用方法:

    • 执行定期任务。例如,传递通知、更新缓存值。

    • 推迟代价高的工作,以便您的应用程序在后台执行计算时保持响应

    大多数编程语言都有后台处理框架/库。例如:

    • Ruby -sidekiq。它使用 Redis 作为作业队列。

    • Python - dramatiq。它使用 RabbitMQ 作为作业队列。

    • Elixir - oban。它使用 Postgres DB 作为作业队列。

    异步编程(async/await)可用于后台处理,但如果直接使用它有几个主要缺点:

    • 它不能控制在任何给定时间正在执行的任务数量。因此,许多衍生的任务可能会使它们启动的一个/多个线程超载。

    • 它不提供任何有助于调查系统和发现瓶颈的监控

    • 任务不是持久的。因此,每次应用程序重新启动时,所有排队的任务都会丢失

    为了解决异步编程的这些缺点,我们在 fang 库中实现了异步处理。

    Github 链接,https://github.com/ayrat555/fang

    文章链接,https://www.badykov.com/rust/async-processing/

    Released grid v0.7.0 - 感谢所有的PR :-)

    Rust的数据结构网格。为 Rust 提供易于使用且快速的二维数据结构。std::vec::Vec 类型为一维向量提供的大部分功能在此 crate 中针对二维实现。

    Github 链接,https://github.com/becheran/grid

    MOROS 0.8.0 Latest

    MOROS 是一个基于文本的简单操作系统,针对具有 x86-64 架构和 BIOS 的计算机。它受到 Unix 和 ITS 的启发,但在功能方面更接近现代 DOS。

    MOROS 0.8.0 有什么新功能?

    • 用户空间程序现在可以用 Rust 编写!它们还可以有命令行参数并返回退出代码

    • 添加了新命令:reboot、socket、time

    • 添加变量、别名、通配符和波浪号扩展,shell 得到了改进

    • Python FUSE 驱动程序现在可以在文件系统映像中写入和删除文件

    阅读 CHANGELOG 上的完整更改列表

    Github 链接,https://github.com/vinc/moros/releases/tag/v0.8.0

    文章链接,https://www.reddit.com/r/rust/comments/whn0ol/moros_080_released/


    From 日报小组 TOM

    社区学习交流平台订阅:

    • Rustcc论坛: 支持rss

    • 微信公众号:Rust语言中文社区

  • 相关阅读:
    Hdu 3549 Flow Problem(最大流)
    uniapp组件scroll-view水平滑动
    设计模式思维导图
    opengl制作天空盒
    京东云PostgreSQL在GIS场景的应用分享
    离散数学 学习 之一阶逻辑的前束范式
    T5 model
    python协议解析
    蓝桥杯嵌入式第一篇 点亮LED灯开启成功之路
    全志D1s开发板裸机开发之坏境搭建
  • 原文地址:https://blog.csdn.net/u012067469/article/details/126203878