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, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기