首頁>技術>

簡介

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。值得體驗。

最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • Vue3.0新特性探索