Actix: فریمورکی اپن‌سورس برای زبان Rust

Actix: فریمورکی اپن‌سورس برای زبان Rust

Actix فریمورکی برای زبان Rust است که تحت مجوزهای Apache و MIT به صورت اپن‌سورس عرضه شده است.

درآمدی بر Actix Web
Actix Web که بر پایهٔ پروژهٔ فوق‌الذکر می‌باشد، یک فریمورک توسعهٔ وب اپلیکیشن است که طبق ادعای سایت رسمی‌اش، فریمورک Actix Web به عنوان ابزاری سریع، کاربردی و سبک برای طراحی سایت با زبان Rust می‌باشد. به عنوان نمونه کد نوشته شده با این فریمورک داریم:

extern crate actix_web;
use actix_web::{http, server, App, Path, Responder};

fn index(info: Path<(u32, String)>) -> impl Responder {
    format!("Hello {}! id:{}", info.1, info.0)
}

fn main() {
    server::new(
        || App::new()
            .route("/{id}/{name}/index.html", http::Method::GET, index))
        .bind("127.0.0.1:8080").unwrap()
        .run();
}

آشنایی با ویژگی‌های Actix Web
 یکی از فیچرهای Actix Web قابلیت‌ توسعهٔ آن با نوشتن لایبرری‌های شخصی و استفاده از آن‌ها داخل این فریمورک است که همین مسئله دست دولوپرها را برای توسعهٔ وب اپلیکیشن‌های مختلف باز می‌گذارد. به طور کلی برخی از شاخص‌ترین ویژگی‌های Actix Web عبارتند از:

- پشتیبانی از پروتکل‌های HTTP/1.x و HTTP/2.0
- پشتیبانی از WebSockets 
- قابلیت فشرده‌سازی منابع
- پشتیبانی از SSL
- برخوردار از یکسری Middleware (همچون Logger ،Session و CSRF)