Rust

Web Frameworks

Actix-web、Axum、Rocket、routing、middleware、handler、状態管理、JSON serialization

22 面接問題·
Senior
1

tokio と tower の上に直接構築され、trait ベースのモジュラーなアプローチを採用している Rust の web framework はどれですか?

回答

Axum は tokio と tower の上に構築されており、middleware には tower の Service と Layer のシステムを使用します。このアーキテクチャにより高い composability が得られ、tower のエコシステム(timeout、rate limiting、tracing)との自然な統合が可能になります。Axum はデータの抽出と type-safe な handler 管理に Rust の trait を活用しています。

2

Axum で path parameter を持つ GET route を定義するにはどうしますか?

回答

Axum では path parameter は route の定義で :param という構文を使い、Path<T> extractor を介して抽出されます。型 T は Deserialize を実装する必要があり、これにより type-safe な抽出が可能になります。handler のシグネチャにおける extractor の順序が、リクエストからデータをどのように抽出するかを決定します。

3

他の Rust framework と比較した Actix-web の実行モデルの特徴は何ですか?

回答

Actix-web は actor モデルを使用しており、各 worker は独自の状態を持つ独立した actor です。リクエストは非同期メッセージで通信する actor によって処理されます。このモデルは優れた分離を提供し、自然な水平スケーラビリティを可能にします。ただし、最近のバージョンでは actor モデルは必須ではなくなっています。

4

Axum で handler 間でアプリケーションの状態を共有するにはどうしますか?

5

JSON ボディの自動検証を伴うルートを定義するための Rocket の構文はどのようなものですか?

+19 面接問題

次の面接に向けてRustをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める