salvo web framework https://github.com/salvo-rs/salvo
use salvo::prelude::*;
#[fn_handler]
async fn hello_world() -> &'static str {
"Hello World"
}
#[tokio::main]
async fn main() {
let router = Router::new().get(hello_world);
let server = Server::new(router);
server.bind(([0, 0, 0, 0], 7878)).await;
}
感觉和 GIN 好像 ,benchmark 感觉也好像不错的鸭子
https://web-frameworks-benchmark.netlify.app/result?l=rust
1
Leviathann 2021-08-25 18:57:16 +08:00 via iPhone
rust 的 web 框架有点多
就是没一个达到 1.0 的 连 tokio 官方都有一个 axum |
2
opentrade 2021-08-25 19:30:44 +08:00 via Android
刚刚用上 axum,tokio 花了好多年才到 1
|
3
Leviathann 2021-08-25 21:17:59 +08:00
看了下 benchmark
比较意外的是速度最快的居然是 java 的 activej 框架,所有语言的框架里唯一一个超过 200k 的 专门弄了个自动将类实例转换为专门的静态类的黑科技压榨 jvm 的性能。。 |
4
wangxn 2021-08-26 01:13:35 +08:00
排在最前面的有几个是 Java 和 JS 的,确实令人意外。
Go 显示了它在 IO 处理上的实力,国内这么火不是没有支撑的。 |
5
wangxn 2021-08-26 01:15:59 +08:00
|
6
liuxu 2021-08-26 10:47:13 +08:00
laravel 1.8k ,什么硬件配置,正常不应该两位数吗,所有的数据除以 100 再看吧,才是你平时用的硬件配置
|
9
fakeshadow 2021-08-26 19:14:55 +08:00
rust 十个 web 框架有八个是 hyper 封装,直接用 hyper 或者 warp/axum 不好吗?
|
10
DollarKiller OP @fakeshadow warp 复杂在于大量的泛型造成代码难以理解,甚至连 IDE 都无法正确识别类型造成编码的困难。
|
11
qW7bo2FbzbC0 2021-09-03 10:56:26 +08:00
@wangxn #5 看了下,我认为,很多个库其实是作为其他库的插件,或者功能不全的
|
12
qW7bo2FbzbC0 2021-09-03 10:59:03 +08:00
这种排名很多,大部分榜单的前十名都不太重合
https://www.techempower.com/benchmarks/#section=data-r20&hw=ph&test=composite |