作者认为目前的孤儿规则是安全的,但是过于严格. 随着 Rust 的发展, 作者认为是时候需要对 孤儿规则 进行一定的弱化,并且提出了自己的一些想法.
Rust 作为第二语言被引入 Linux 内核,虽然目前是实验性质,但对每一个 Rustaceans 来说都是一件值得关注的大事。本文通过编写一个简单的字符设备驱动,带领我们了解如何通过 Rust 为 Linux 编写内核模块。
这个教程非常完整,基于actix-web 1.0和Diesel实现的一个基于JWT认证的微服务系统。
warp is a super-easy, composable, web server framework for warp speeds.
一个简单、便携、高性能、ACID、嵌入式的 Key-Value 存储工具。使用纯 Rust 编写,受 Imdb 启发,更多细节可阅读下面的设计文档。
经过几个月的迭代,编译时 ORM RBatis 已经更新到V4。这篇文章详细介绍了我们的策略和动机
0.3版本支持tokio0.2,如果你在使用tokio0.2-alpha.6 请使用0.2版本
像Golang 借助微服务和云原生的春风,构建了强大的生态系统。Python在数据分析和机器学习,构建了简洁实用的生态系统。
Blog:https://blog.hidva.com/2021/09/14/kbio/
游标一般适用于大结果集,大结果集在内存中放不下 且 数据可以一条一条处理的情况 比较适合使用游标。
最近,shuttle 发布了新的 Node.js CLI 包,允许用户快速引导由 Next.js 前端加 Axum 后端(一种流行的 Rust Web 框架,以易于上手、语法简单著称)开发的应用程序。
在我们学习和工作中,一个非常重要的技能就是能够快速阅读和理解别人的代码,从而为我所用。
RillRate 周一发布了前端的所有资源(由Yew制作)!并将许可完全改为Apache-2.0:前端和后端。
Neon 是 AWS Aurora Postgres 的无服务器开源替代品。它将存储和计算分开,并通过跨节点集群重新分布数据来替代 PostgreSQL 存储层。 尝试使用 Neon 免费套餐创建无服务器 Postgres 实例。然后使用您首选的 Postgres 客户端(psql、dbeaver 等)连接到它或使用在线 SQL 编辑器。有关连接说明,请参阅从任何应用程序连接。或者,在本地编译并运行该项目。
📷 参考: https://github.com/x931890193/rust_blog # Cargo.toml [package] name = "rust_blog" version = "0.1.0" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] actix-protobuf =
pg_idkit是一个用于生成 ID 的 Postgres 扩展,使用 pgx 开发的,它使 Postgres 实例可以使用一些更奇特的 UUID 生成策略(Timeflake、CUID、UUIDv6-8 等),目前仍是一个 WIP。
这是 2021 年 12 月底发布的最新论文,主要比较了四种浏览器架构,同时指出近十年来浏览器中内存安全问题依然是主流。但是观察 Firefox 通过 Oxidation 项目(Rust)替换了 12% 的组件。自2015年以来,Firefox的内存安全漏洞数量出现了小幅但稳定的下降,其中,渲染器的内存安全漏洞明显下降。
昨天,《Rust语言中文》社区推送的一篇公众号关于:Rust for web development: 2 years later的文章。可以理解为作者使用了两年Rust后的一些感悟,在此翻译中文。
arroyo[2] 是一个 Rust 实现的分布式流处理引擎,旨在高效地对数据流进行有状态计算。与传统的批处理不同,流处理引擎可以处理有界和无界的数据源,并在结果可用时立即输出。
我们在上文《小朋友也能听懂的Rust网络编程框架知识-Tokio基础篇》对于Tokio的基础知识进行了一下初步的介绍,本文就对于Tokio的用法及原理进行进一步的介绍与说明。
2022 即将过去,在朋友圈一片盘点总结的大潮中,我也不能免俗。今天,我来说说我个人在知识分享和开源项目方面的贡献。
Includes new APIs, utilities, and fixes. Some highlights:
作者 | Josh Mo 译者 | 核子可乐 策划 | 李冬梅 如果大家已经拥有一定的 Rust Web 开发经验,应该听说过在前端 Web 开发上用 Rust(通过 WASM)还是用 JavaScript 这个充满争议性的话题。不少人旗帜鲜明表示反对,认为 Rust“不适合生产”,而且速率“比 JavaScript 还慢”。 这种说法也有道理:从历史上看,因为 WASM 无法访问 DOM,所以从 JavaScript 调用 WASM 确实会产生额外开销。但目前这方面的影响已经很小,基准数据显示,
因此需要对这部分升级的代码进行回归,具体原由看这里:https://github.com/rust-lang/rust/issues/84958
这是 Rust Embedded WG 的第 22 期通讯,我们重点介绍新的进展,为出色的项目加油,感谢社区并宣传需要帮助的项目!(如果您想在下一期通讯中提及,请联系我们。)例如:用 Rust 在树莓派上进行操作系统开发教程:https://github.com/rust-embedded/rust-raspi3-OS-tutorials。
尽管自90年代以来,这个数字已经稳步下降,但现在仍然有许多不同的、不兼容的CPU架构在使用。大多数计算机使用x86_64,几乎所有的移动设备和最近的Mac都使用某种基于ARM64的ISA(指令集架构)。
Serverless的概念火了,业界已经不再讨论要不要用Serverless的问题了,而是高喊Serverless First的口号力求快速拥抱Serverless,无服务器并不是Serverless的本质,不需要关心服务器的情况就能高效工作,才是Serverless胜出的核心要义。互联网时代流量的大起大落,很多科技巨头在面对流量的冲击时也都败下阵来,针对前几个月B站的崩溃事件,笔者还曾写过《B站的前端崩了,后端的你别慌》来分析来龙去脉,而Serverless凭借快速伸缩的自动弹性特点,可以从容应对类似的冲击,这也让这种新技术出尽的风头。
通过之前的《Rust 异步编程之 Future 初探》我们知道Rust的异步是以task的调度来构建的。task作为抽象在语言层面的调度单元。
今天我们继续高并发的话题,传统的云计算技术,本质上都是基于虚拟机的,云平台可以将一些性能强劲的物理服务器,拆分成若干个虚拟机,提供给用户使用,但在互联网发展到今天,虚拟机还是太重了。即使是飞天集群,新增部署虚拟机的时间也是以分钟来计的。但是对于互联网用户来讲20秒的等等就是就会千万50%以上的用户流失,不能忍受的煎熬,因此Docker秒级启动的速度也不是个完美的解决方案,最终还是要Serverless极速的伸缩才能满足客户需求。
大名鼎鼎的 The Algorithms 的 Rust 版本,使用 Rust 实现所有算法。
QUIC 是一种为性能而设计的加密传输协议,它是尚处在襁褓之中的 HTTP/3(最新是 draft-34)的基础。根据维基百科的资料显示,QUIC 在 2012 年就被部署到 Google 内部,并于 2013 年对外发布。2021 年 5 月,IETF 在 RFC 9000 中对 QUIC 的基本功能进行了标准化,并在 RFC 9001 中标准化了如何使用 TLS 保护 QUIC,以及 RFC 9002 中标准化了 QUIC 的拥塞控制。QUIC 通过使用在 QUIC 传输中承载的通过 TLS 建立的加密和身份验证密钥来保护其 UDP 数据报文。它旨在通过提供改进的首字节延迟,多路复用,以及解决诸如线头阻塞、移动性和数据丢失检测等问题来改进 TCP。
感谢各位参加由Rustcc主办的首届Rust中国开发者大会。本次大会的回放录像已经在Rustcc论坛公布。
tokio 今天发布了新的 RFC,提出了新的支持 io-uring 异步运行时的计划。
许多人不停抱怨 Ruby 运行缓慢。诚然,它的确不如人意,然而这并非致命伤,因为问题的根源在于你的数据库速度缓慢,成为了瓶颈。因此,这个标题也可以改为 “Ruby 虽慢,但对你而言无关紧要”。
因为是复刻Java系的Mybatis,因此框架暂命名 Rbatis。小部分功能还在进行中。github链接https://github.com/rbatis/rbatis
Read More: https://tokio.rs/blog/2019-08-alphas/
LLVM 的速度直接影响 rustc 的速度,因为rustc使用LLVM作为后端。
ralfj比较高产,他负责Unsafe下内存模型相关的工作,目的是用miri来检测unsafe中的UB行为。
在过去的几个星期,作者通过GDB调试了他们的动态链接器(ld.so)并找到了不少共享库的问题。
在 Rust 中,fs 模块提供了文件系统操作的函数,包括向文件写入数据。其中一个常用的函数是 fs::write,它允许用户将数据写入文件。然而,重要的是要注意,fs::write 不会自动刷新或同步数据到磁盘,如果不正确处理,可能会导致潜在的数据丢失或不一致性问题。
https://www.bilibili.com/video/BV1HK4y1Q7EA
本文简单介绍了在Rust中编写一个工程性更强的组件(crate)所必须要遵循的一些原则:
区别于互斥锁(Mutex)是对共享资源的独占访问,Semaphore 允许指定多个并发访问共享资源。
今天,我们很高兴地宣布初始发布Tokio-Metrics,一个用于获得Tokio应用程序的运行时和任务级别指标的crate。Tokio-Metrics使Tokio用户更容易通过提供生产中的运行时行为来调试性能问题。
到目前為止,感謝社區的回饋與rust團隊對rust語言的維護,也感謝tokio有專業的團隊在維護。
这不是闹着玩儿的操作系统了,这可是面向商业的正式的操作系统(一个 Linux 发行版)。官网地址在这里
axum是Rust生态的web框架新秀,虽然项目成立不久,但github上的star数已超2.8k,其底层依赖的是高性能的Tokio,Tokio这货就不多说了,借用知乎《深入浅出Rust异步编程之Tokio》上的一张图:
Rust 生态中,不谈官方的 Future trait,成熟可供生产环境使用的异步运行时,主要有三类:
这个运行环境库扩展了rust语言标准类库 并结合了异步机制,仅用1500行代码写成!请大家阅读文档 并参考提供的例子这样就可以开始自己动手写具有异步运行机制的程序了。
在之前的用 Rust 搭建 React Server Components 的 Web 服务器我们利用了Axum构建了RSC的服务器。也算是用Rust在构建Web服务上的小试牛刀。
领取专属 10元无门槛券
手把手带您无忧上云