요청을 처리하는 공통 규약
Service는 요청 하나를 받아 응답 또는 오류를 비동기로 반환하는 동작을 표현한다. 클라이언트와 서버 모두 이 규약으로 나타낼 수 있다. 특정 프로토콜에 묶이지 않지만 요청과 응답의 관계를 중심으로 설계되어 있다.
서비스를 감싸는 미들웨어
제한 시간과 요청률 제한 및 부하 분산 같은 기능은 내부 서비스를 감싸는 서비스로 구성한다. Layer는 서비스를 받아 다른 서비스로 바꾸는 조합 규약이다. ServiceBuilder를 통해 여러 계층을 연결할 수 있다.
프로토콜 구현과의 연결
Tower 자체만으로 동작하는 네트워크 클라이언트나 서버가 완성되는 것은 아니다. 프로토콜 구현과 응용 논리 및 공통 미들웨어를 연결하는 인터페이스를 제공한다. 사용하는 미들웨어 기능은 필요한 선택 기능을 활성화해 구성한다.
관련 문서
Axum / Hyper HTTP / Tonic / Warp 웹 프레임워크 / API / Rust