📌 ทำไมต้อง Rust สำหรับ Web API?
Rust เป็นภาษาที่มีความเร็วสูง ปลอดภัย และเหมาะกับระบบที่ต้องการ performance และ memory safety ระดับสูง การใช้ Rust เขียน Web API จึงเป็นตัวเลือกที่น่าสนใจมาก โดยเฉพาะกับเฟรมเวิร์กอย่าง Actix-Web และ Axum ที่ได้รับความนิยม
🚀 เตรียมโปรเจคด้วย Cargo
cargo new rust-api cd rust-api
🔧 ตัวอย่าง API ด้วย Actix-Web
เพิ่ม dependencies ใน Cargo.toml
:
[dependencies]
actix-web = “4”
เขียนไฟล์ main.rs
:
use actix_web::{get, App, HttpServer, Responder}; #[get("/")] async fn hello() -> impl Responder { "Hello from Actix-Web!" } #[actix_web::main] async fn main() -> std::io::Result<()> { HttpServer::new(|| App::new().service(hello)) .bind(("127.0.0.1", 8080))? .run() .await }
📦 ตัวอย่าง API ด้วย Axum
เพิ่ม dependencies:
[dependencies]
axum = “0.7” tokio = { version = “1”, features = [“full”] }
สร้าง API ง่าย ๆ:
use axum::{ routing::get, Router, }; async fn hello() -> &'static str { "Hello from Axum!" } #[tokio::main] async fn main() { let app = Router::new().route("/", get(hello)); axum::Server::bind(&"127.0.0.1:3000".parse().unwrap()) .serve(app.into_make_service()) .await .unwrap(); }
📊 เปรียบเทียบแบบรวบรัด
- Actix-Web: เร็วสุด ใช้ Actor model
- Axum: ใช้ง่ายกว่า เหมาะกับมือใหม่ Rust
🧠 สรุปสั้น ๆ
ถ้าคุณต้องการความเร็วสุด ๆ เลือก Actix-Web
ถ้าคุณชอบโค้ดที่อ่านง่าย เลือก Axum
ทั้งคู่ดีเยี่ยม เริ่มจากที่คุณชอบ แล้วเรียนรู้ต่อยอดได้สบาย ๆ
บทความนี้จัดทำโดยทีม poolsawat.com | ใช้เวลาอ่านประมาณ 20 นาที