簡介
Rust web框架Actix web 在昨天釋出了2.0版,作為Rust的粉絲,當然要第一時間體驗了
程式碼新建一個基本的程式碼目錄,cargo new 就可以, 參見我的目錄
src/main.rs 的內容
use actix_web::{get, web, App, HttpServer, Responder};#[get("/")]async fn index() -> impl Responder { format!("Hello World")}#[actix_rt::main]async fn main() -> std::io::Result<()> { println!("Listen on 127.0.0.1:8080"); HttpServer::new(|| App::new().service(index)) .backlog(65536) .maxconn(65536) .maxconnrate(65536) .bind("127.0.0.1:8080")? .run() .await}
cargo.toml的內容
[package]name = "actix-hello"version = "0.1.0"authors = ["ZhiFeng Hu"]edition = "2019"# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html[dependencies]actix-web = "2.0"actix-rt = "1.0.0"
編譯執行
如果你只是跑一下試試,那麼執行
cargo run
然後開啟瀏覽器,訪問 http://localhost:8080就可以看到效果了
如果需要編譯二進位制可執行程式,就執行
cargo build
編譯完之後,可執行檔案在 target/release
效能拉一個性能跑分測試,結果能跑到3.6w qps,效能還可以吧
總結actix-web是基於rust語言開發的,非同步的web框架,可以用於構建web應用,或者提供api。 效能也還可以,比php,python等動態語言要強,略遜於 java,golang。值得體驗。
最新評論