Rust 值得关注的三个 web 框架

2024年 2月 1日 79.7k 0

大家好,我是渔夫。

今天主题,值得关注 Rust 的web框架有那些。

近年来,Rust 语言在编程界里崭露头角,为多个领域提供了出色的解决方案,不管你是身为客户端程序员,还是后端,甚至底层开发,内核开发等人员都是对 Rust 产生浓厚兴趣。

到目前为此,Rust 生态中涌现出多个流行的Web框架,其中三个备受瞩目:

1.Axum

Axum框架 ,是由 Rust 社区的异步事实标准 Tokio 团队开发,以高性能和强大的异步支持著称。随着来自知名团队的背书,Axum 框架的发展迅速,备受开发者青睐。

高级特性:

  • 使用无宏 API 将请求路由到处理程序
  • 使用提取器以声明方式解析请求
  • 简单且可预测的错误处理模型
  • 使用最少的样板生成响应
  • 充分利用中间件、服务和实用程序的生态系统 tower,tower-http

Github 地址:https://github.com/tokio-rs/axum

2.Actix Web

Actix Web 是 Rust 中一款历史悠久且备受欢迎的Web框架之一,作为一项优秀的开源项目,经过多次迭代,并已经达到了主要版本了。这样 Actix Web 可以确保不会引入破坏性的更改。

Actix Web 实现了自己的 Service 特性,与 Tower 的Service 基本相同但不兼容,也就是说在Tower 生态系统中大多数可用的中间件在 Actix中无法使用。在Actix Web中执行一些特殊任务时,可能需要涉及到框架中的Actor模型,这可能带来一些意外的问题。

多提一嘴,Actix Web 社区非常强大,框架支持 HTTP/2和WebSocket,提供了用于Web框架中最常见任务的 crate s和指南,并且提供强大文档,而且速度非常快。Actix Web备受欢迎,是因为它提供了稳定版本,并在解决挑战时提供了最佳选择。

官网地址:https://actix.rs/docs/

3.Warp

Warp 是一个强大的 Rust Web 框架,提供了许多开箱即用的功能,包括路径路由和参数提取、标头要求和提取、查询字符串反序列化、JSON和表单正文处理、多部分表单数据、静态文件和目录服务、网络套接字管理、访问日志记录、Gzip、Deflate和Brotli压缩,以及服务器发送事件(SSE)等。

由于 Warp建立在 hyper 和 Tokio 这两个异步Rust运行时之上,因此它自动提供了HTTP/1和HTTP/2支持、异步功能以及被认为是最快之一的HTTP实现。Warp经过充分的测试,确保其正确性和稳定性,使其成为构建高性能、可靠的Web应用程序的理想选择。

开源依赖库:

  • Tokio
  • NuShell
  • Fig Completion Specs
  • Warp Server Framework
  • Alacritty
  • Hyper HTTP library
  • FontKit
  • Core-foundation
  • Smol

Github 地址:https://github.com/warpdotdev/Warp

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论