V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
naoh1000
V2EX  ›  Rust

请问我这种需求用什么框架/怎么写合适?

  •  
  •   naoh1000 · 2021-02-23 15:02:14 +08:00 via iPhone · 2880 次点击
    这是一个创建于 1403 天前的主题,其中的信息可能已经有所发展或是发生改变。
    后端小白,最近很喜欢 Rust,打算用 Rust 给我的小项目写一个后端。目前前端已经写好了,构建成了静态 html,想用 Rust 写几个简单的 MySQL 数据库增删改查 API,请问我这种需求用什么框架 /怎么写合适?不需要服务器端渲染前端,有没有像 Go 一样路由以外请求静态文件的方法?
    8 条回复    2023-03-15 11:41:26 +08:00
    jevonszmx
        1
    jevonszmx  
       2021-02-23 15:13:45 +08:00
    没有前端,简单增删改查数据库,用 php 啊。
    nickyang897897
        2
    nickyang897897  
       2021-02-23 17:32:15 +08:00
    Rust 写 web,大才小用了,Rust 应该写高性能网络或者操作系统相关的东西
    naoh1000
        3
    naoh1000  
    OP
       2021-02-23 18:09:41 +08:00 via iPhone
    @jevonszmx
    @nickyang897897
    就是想用 Rust 写个 web 应用
    Jirajine
        4
    Jirajine  
       2021-02-23 18:19:53 +08:00   ❤️ 1
    web 框架可以试试 tide,和 gin 比较像。
    rocket 也非常好,但目前版本还不支持异步,异步得用 master 分支。
    warp 采用了完全不同的路由方式,如果你喜欢函数式可以试试这个。

    web 框架一般都支持静态文件路由,数据库用个 diesel 或者 sqlx 。

    其他的可以看看 https://www.arewewebyet.org/
    fakeshadow
        5
    fakeshadow  
       2021-02-23 20:51:16 +08:00   ❤️ 1
    可以试试 actix-web
    Hackerchai
        6
    Hackerchai  
       2021-02-23 22:19:48 +08:00   ❤️ 2
    推荐 actix-web,目前 rust 生态最佳 web 框架选择了,性能长期霸榜,文档完备,相关生态也好,actor 模型很好用。

    搭配 orm 就选 diesel,就是 diesel 不支持异步,需要搭配 sync-actor 使用,目前体验最好

    如果想要更高效率的异步 sql 库可以用 sqlx,就是需要手动写 sql 语句,sqlx 还不是很成熟不过生产可以用

    rocket 性能不太行,但是编码比较舒服; warp 基于 hyper,tide 基于 async-std,文档不是很全。

    目前来说看好 warp,因为基于 hyper,要比 actix-web 自己单打独斗更有发展
    Hackerchai
        7
    Hackerchai  
       2021-02-23 22:24:53 +08:00   ❤️ 1
    如果不在意性能,可以考虑 rocket , Rust Web 框架第二的人选,文档完备。最主要的是写起来很优雅舒适。不过既然都用 Rust 了,再用一个性能可能都打不过 gin 的说不过去了。
    IIInsomnia
        8
    IIInsomnia  
       2023-03-15 11:41:26 +08:00
    可以试试 [api-tpl-rs]( https://github.com/shenghui0779/api-tpl-rs),axum+sea-orm ,非常适合新手
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1186 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 18:25 · PVG 02:25 · LAX 10:25 · JFK 13:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.