axum / Rust Webエコシステム

Rust で Web バックエンドを書くためのフレームワークと周辺。_moc-web-infra

axum

  • tokio チームが作る Rust 製 Web FW。actix-web の対抗としてデファクト化しつつある。
  • tower(リクエストを受けてレスポンスを返す抽象)上に構築、ランタイムは tokio。
  • WebSocket / graphql / grpc に対応。NATS と組み合わせてスケーラブルな WebSocket サーバも。

actix

Rust でアクターモデルを実現する crate(actix-web の基盤)。

サーバレス / PaaS

  • Shuttle: Rust の「Infrastructure from Code」サーバレスPaaS。Yew + axum で RealWorld を書く例など。
  • Deno: TypeScript ランタイム。mod.ts/deps.ts に依存を書く慣習。npm パッケージも利用可。Deno Deploy。
  • wasmCloud: WebAssembly を使った業務システム向けプラットフォーム。

性能チューニング(ISUCON)

構成は Nginx + MySQL + アプリの3層が定番。複合インデックス(ORDER BY含む)・bulk insert・LIMIT 1・キャッシュ・304 Not ModifiedCache-Control: max-age。不変性に着目しリクエスト間で結果を使い回す SingleFlight 化。Rust 移植は actix-web + sqlx。「推測するな、計測せよ」。

関連