2024年新兴的Rust框架正日益流行

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

新兴的Rust框架正日益流行:开发者需要了解什么



Rust语言的生态系统持续活跃发展,2024年成为其一个新Web框架的真正突破之年。这里指的是Axum项目——一个用于构建Web应用程序的异步框架,在过去半年中显示出爆发式的流行增长。根据GitHub数据和Stack Overflow调查,Axum在采用速度上超过了Actix-web和Rocket等老牌框架。



为什么选择Axum?

Axum基于Tokio和Tower库构建,确保了最大性能和与现有Rust项目的兼容性。以下是其快速增长的关键原因:



  • 简单易用且符合人体工程学:该框架利用Rust强大的类型系统在编译阶段检查路由。
  • 与Tower完全兼容:开发者可以轻松地从庞大的Tower生态系统中接入中间件(日志记录、压缩、请求限制)。
  • 优秀的文档:代码示例覆盖了90%的典型任务——从REST API到WebSocket。
  • 支持async/await:无需多余宏的原生异步支持。


Axum最小服务器示例

要评估其简洁性,只需看看基础HTTP服务器的代码:



use axum::{Router, routing::get, response::Html};

#[tokio::main]async fn main() { let app = Router::new() .route("/", get(|| async { Html("<h1>你好,世界!</h1>") }));

axum::Server::bind(&"0.0.0.0:3000".parse().unwrap()) .serve(app.into_make_service()) .await .unwrap();}


仅需10行代码——您就拥有了一个性能可与C++媲美的运行中的Web服务器。



与竞品的比较

为直观起见,我们列出Axum与其他流行Rust框架的主要区别:



  • Actix-web:速度更快,但类型配置更复杂。Axum在代码可读性上胜出。
  • Rocket:适合原型开发,但需要编译器的nightly版本。Axum在stable Rust上稳定运行。
  • Warp:灵活,但学习曲线陡峭。Axum提供了更平缓的学习曲线。


预测与未来

分析人士指出,Axum的流行与微服务和WebAssembly的趋势直接相关。由于Rust越来越多地用于高负载系统(例如云提供商和区块链项目),一个简单且安全的框架正成为事实上的标准。



目前,像Discord和Cloudflare这样的大公司正在将其部分Rust服务迁移到Axum。对于正在学习Rust的Python开发者来说,由于熟悉的async/await语法和大量现成的示例,这个框架是最好的入门点。



请关注PythonLib上的更新——我们将继续为您介绍Rust和Python世界中最热门的新事物。

推荐库