
228
HTTP
2
부 HTTP 아키텍처
8.1
게이트웨이
HTTP의 확장과 인터페이스는 사람들의 필요에 따라 발전해왔다. 웹에 더 복잡한
리소스를 올려야 할 필요가 생기면서, 모든 리소스를 한 개의 애플리케이션으로만
처리할 수 없다는 것은 분명해졌다. 개발자들은 이 문제에 대한 해결책으로, 인터
프리터 같이 리소스를 받기 위한 경로를 안내하는 역할을 하는 게이트웨이를 고안
해냈다. 게이트웨이는 리소스와 애플리케이션을 연결하는 역할을 한다. 애플리케
이션은 게이트웨이에게 요청을 처리해달라고 할 수 있고(HTTP 혹은 그 밖의 정의
해 둔 인터페이스를 통해), 게이트웨이는 그에 응답할 수 있다. 게이트웨이는 요청
을 받고 응답을 보내는 포털 같이 동작하는데, 동적인 콘텐츠를 생성하거나 데이터
베이스에 질의를 보낼 수 있다.
그림 8-1은 리소스 게이트웨이를 보여준다. 여기서는 죠의 컴퓨터 가게의 서
버가 데이터베이스로 가는 게이트웨이 역할을 하고 있다. 클라이언트는 단순히
HTTP를 통해서 리소스를 요청하고, 죠의 컴퓨터 가게 서버는 리소스를 얻기 위한
게이트웨이 인터페이스 역할을 하고 있다.
GET /query-db.cgi?newproducts HTTP/1.1
Host: www.joes-hardware.com
Accept: *
HTTP/1.0 200 OK
New product ...