이러한 기능을 쉽게 구현하기 위해 그림 8-3처럼 동작하는 프레임워크를 만들어 볼 것이다.

1. 라우터: 웹 요청을 들어오면 URL 기반으로 특정 핸들러에 전달한다.
2. 컨텍스트: 웹 요청의 처리 상태를 저장하는 공간이다.
3. 미들웨어: 핸들러 로직을 수행하기 전에 공통으로 수행할 코드 조각이고 재사용이 가능하다. 미들웨어는 주로 다음과 같은 기능을 처리한다.
• 로그 처리
• 에러 처리
• 정적 파일 처리
• 사용자 인증과 권한 관리
• 보안 처리
• 세션 상태 관리
• 웹 요청 정보 파싱
4. 렌더러: 핸들러 로직 수행 결과를 다양한 형태(JSON, XML, Html Template 등)로 응답한다.