Rust Web 開發框架 Poem 0-3 發佈-
Poem 是一個基於 tokio/hyper 的 WEB 服務端框架。
爲什麼要做一個新的 web 框架
-
actix-web 已經半死不活了,和 tokio1 兼容的新版本始終出不來(就算出來和其它生態結合也有問題,因爲用得單線程 runtime)
-
tide 已經死了,和 async-std 一起
-
warp 太複雜,就算是一個 rust 老手也會經常被整的死去活來
-
axum 目前比較火,但是在我深入研究之後,發現也存在和 warp 同樣的問題。
在和社區的朋友聊 axum 的過程中,發現大家都不太玩得明白,我突然就想做一個用起來簡單點的。
Poem 簡單在哪裏
我覺得 warp 複雜在於大量的泛型造成代碼難以理解,甚至連 IDE 都無法正確識別類型造成編碼的困難。
但簡單不代表沒有泛型,而是去掉一些不必要的泛型。
Poem 在對性能影響不大的地方儘量減少泛型的使用,定義 IDE 友好,容易理解的 API。
Poem 的當前狀態
完全覆蓋 warp 的功能,API 已經基本穩定。
Poem 的後續目標
-
更完善的文檔以及使用手冊。
-
覆蓋更全面的測試用例。
-
提供更多開箱即用的功能。
-
內置 openapi(swagger) 的支持。
感謝
感謝張漢東提供的 Poem 註冊名,小丁製作的網站,以及社區各位朋友提供的意見和 PR。
倉庫地址
https://github.com/poem-web/poem
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/8vfVWzSjFMcVxL2vGr3NHg