OSS探訪

RustでHTTP APIやWebSocketを高性能に構築し、Tokio上で非同期Webサーバーを動かす

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
24,852
主要言語
Rust
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/03
ページ内ナビ

概要

Actix WebはRust向けの非同期Web frameworkです。routing、middleware、HTTP/1.x・HTTP/2、WebSocket、streaming、compression、multipart、static fileなどWeb serverに必要な機能を提供し、Tokio ecosystemと統合できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

routingとextractorでHTTP APIを組み立てる

macroまたはbuilder APIでrouteを定義し、pathやJSONなどrequest dataを型として受け取れます。handlerはasync functionとして記述できます。

出典:[1]

HTTP/2・WebSocket・streaming・compressionまで同じframeworkで扱う

HTTP/1.xとHTTP/2、WebSocket、streaming、multipart、static assets、Brotli/gzip/zstd compressionを一つのserver stackで利用できます。

出典:[1][2]

Tokioとmiddleware ecosystemへ接続する

Tokioとの互換性を持ち、logger、session、CORSなどmiddlewareを組み合わせてservice共通処理を構成できます。

出典:[1]

向いている用途

RustでAPI serverやreal-time backendを構築したいteamに向く

型安全なRust codeでREST系API、WebSocket、streaming backendを実装し、runtimeもRust/Tokioへ統一したいprojectで検討できます。

出典:[1]

導入前の確認

4.15.0はRust 1.88以上を要求する

workspaceとactix-web packageはMSRVをRust 1.88に設定しています。古いtoolchainを固定しているprojectでは先にcompiler update可否を確認します。

出典:[2]

experimental featureはrelease間でbreaking changeがあり得る

READMEはexperimental接頭辞のfeatureをproductionでは自己責任とし、breaking changeが任意のreleaseで発生し得ると明記しています。experimental-introspectionはlocal diagnostics用途として扱います。

出典:[1][3]

licenseはMITまたはApache-2.0のdual license

workspaceはSPDX expressionとしてMIT OR Apache-2.0を宣言し、両方のlicense fileを含みます。配布時は採用するlicense条件とnoticeを確認します。

出典:[2][4][5]

参考にした公式資料

  1. [1]Actix Web README(2026-10-03)
  2. [2]Actix Web Cargo manifests(2026-10-03)
  3. [3]Actix Web changes(2026-10-03)
  4. [4]Actix Web MIT license(2026-10-03)
  5. [5]Actix Web Apache-2.0 license(2026-10-03)
編集部からの補足

RustでAPIやリアルタイム通信を低オーバーヘッドで構築したい場合の有力なWeb frameworkです。4.15.0はRust 1.88+が必要で、experimental接頭辞のfeatureはminor releaseでもbreaking changeがあり得るためproductionでは避けるか固定してください。

3ステップで試す

  1. 1

    Rust projectを作成

    Rust 1.88以上のtoolchainで新しいbinary projectを作成します。

    cargo new actix-demo && cd actix-demo
  2. 2

    Actix Web 4.15.0を追加

    公開versionを固定してdependencyへ追加し、READMEのHello World例をsrc/main.rsへ配置します。

    cargo add actix-web@4.15.0
  3. 3

    serverを起動して確認

    起動後に http://127.0.0.1:8080/hello/world を開き、routingとresponseを確認します。

    cargo run
公式READMEで確認

成長

成長の推移 · 直近30日

24,852 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
73
Open PR
44

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • rust
  • web
  • web-development
  • websockets
  • actix
  • actix-web
  • async
Stars
24,852
Forks
1,890
Watchers
239
Open Issues
145
Contributors
380
所有者種別
Organization
主要言語
Rust
ライセンス
Apache-2.0
リポジトリ最終更新
2026/10/03

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?