发现一个国人写的人体工学的 RUST web 框架 Salvo

2021-08-25 18:05:55 +08:00
 DollarKiller

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

4392 次点击
所在节点    程序员
12 条回复
Leviathann
2021-08-25 18:57:16 +08:00
rust 的 web 框架有点多
就是没一个达到 1.0 的
连 tokio 官方都有一个 axum
opentrade
2021-08-25 19:30:44 +08:00
刚刚用上 axum,tokio 花了好多年才到 1
Leviathann
2021-08-25 21:17:59 +08:00
看了下 benchmark
比较意外的是速度最快的居然是 java 的 activej 框架,所有语言的框架里唯一一个超过 200k 的
专门弄了个自动将类实例转换为专门的静态类的黑科技压榨 jvm 的性能。。
wangxn
2021-08-26 01:13:35 +08:00
排在最前面的有几个是 Java 和 JS 的,确实令人意外。
Go 显示了它在 IO 处理上的实力,国内这么火不是没有支撑的。
wangxn
2021-08-26 01:15:59 +08:00
liuxu
2021-08-26 10:47:13 +08:00
laravel 1.8k ,什么硬件配置,正常不应该两位数吗,所有的数据除以 100 再看吧,才是你平时用的硬件配置
EmptyDX
2021-08-26 11:13:44 +08:00
@liuxu 1.8k 是 lumen
liuxu
2021-08-26 11:21:14 +08:00
@EmptyDX 1.6k ,发帖就发现打错了,懒得更正,重点在除以 100,不是 1.8k 还是 1.6k
fakeshadow
2021-08-26 19:14:55 +08:00
rust 十个 web 框架有八个是 hyper 封装,直接用 hyper 或者 warp/axum 不好吗?
DollarKiller
2021-08-26 19:29:52 +08:00
@fakeshadow warp 复杂在于大量的泛型造成代码难以理解,甚至连 IDE 都无法正确识别类型造成编码的困难。
qW7bo2FbzbC0
2021-09-03 10:56:26 +08:00
@wangxn #5 看了下,我认为,很多个库其实是作为其他库的插件,或者功能不全的
qW7bo2FbzbC0
2021-09-03 10:59:03 +08:00
这种排名很多,大部分榜单的前十名都不太重合
https://www.techempower.com/benchmarks/#section=data-r20&hw=ph&test=composite

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/797985

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX