티스토리 뷰
2022 우아한스터디 "HTTP 완벽가이드"를 진행하면서
'HTTP 완벽 가이드' 책을 읽고, 글쓴이의 생각을 정리하는 글 입니다.
https://book.naver.com/bookdb/book_detail.nhn?bid=8509980
1. 게이트웨이(GateWay)란 무엇인가?
Proxyd에서 잠깐 언급되었지만, 게이트웨이는 HTTP요청을 받고, 이 요청을 HTTP가 아닌 다른 프로토콜로 변환해서 통신하는 중간서버를 의미합니다(Proxy와 유사합니다)
아래 예시를 보면 쉽습니다. 서로다른 프로토콜 간 인터페이스 역할을 하는 것을 알 수 있습니다.
--->> HTTP Requests --->> --->> FTP Reqeusts --->>
Client GateWay OneServer
<<--- HTTP Response <<--- <<--- FTP REsponse <<---
2. 프로토콜 게이트웨이
이러한 게이트웨이를 사용하기 위해서는 HTTP Requests 요청을 할 때 GateWay Protocol, HTTP Protocol을 둘다 명시합니다.
//HTTP 프로토콜 명세에 게이트웨이의 프토토콜을 추가함
GET ftp://gtp.irs.gov/pub/00-index.txt HTTP/1.0
Host : ftp.iris.gov
User-agent : BlaBlaBrower
3. 프로토콜 게이트웨이(또다른 활용).
HTTP를 다른 프로토콜로 변환하는 것이 게이트웨이라고 하였습니다.
이는 HTTP <-> HTTPS에도 해당됩니다. HTTPS는 HTTP를 SSL 암호화가 추가된 형태입니다.
따라서, 게이트웨이는 HTTP <-> HTTPS 변환 가속기, 인바운드 보안 등으로 활용이 가능합니다.
--->> HTTP Requests --->> --->> HTTPS Reqeusts --->>
Client GateWay(인바운드 보안) OneServer
<<--- HTTP Response <<--- <<--- HTTPS REsponse <<---
--->> HTTPS Requests --->> --->> HTTP Reqeusts --->>
Client GateWay(보안가속) OneServer
<<--- HTTPS Response <<--- <<--- HTTP REsponse <<---
4. 리소스 게이트웨이
책에서는, 리소스 게이트웨이가 보다 보편적으로 사용되는 게이트웨이라고 합니다.
리소스 게이트웨이는 Client의 요청을 Application으로 전달하기 위한 API역할을 합니다.
아래는 GateWay를 통해서 Camera Application에 접근하는 경우의 예시입니다.
--->> HTTP Requests --->> --->> API로 촬영 요청 --->>
Client GateWay(API) Camera
<<--- HTTP Response <<--- <<--- 촬영된 이미지 <<---
(이미지를 포함)
이때 이런 리소스 게이트웨이를 위한 공용 인터페이스로 CGI(Common GateWay Interface) 가 유명합니다.
--->> HTTP Requests --->> --->> CGI Pgm기반 요청 --->>
Client GateWay(API : CGI) Camera
<<--- HTTP Response <<--- <<--- CGI Pgm기반 응답 <<---
(이미지를 포함)
CGI가 있을 경우, GateWay의 웹서버다 어떤 플랫폼 이던 상관 없이 Protocol만 지키면 Camera와 통신을 할 수 있게되는 장점을 볼 수 있습니다.
대신, CGI는 매 요청을 처리할 때 마다 새로운 Process를 만들게 됩니다.
(Process는 요 포스팅을 참조.... "예정")
때문에 성능 부분에서 단점을 가지고 있고, 이 부분을 개선하기 위한 Fast CGI등이 존재합니다(데몬 Thread로 동작).
5. 게이트웨이 터널
게이트웨이 터널 이란게 있는데, 이 부분은 나중에...
'네트워크 > HTTP' 카테고리의 다른 글
14. 쿠키 (0) | 2022.06.16 |
---|---|
13. 웹로봇 (0) | 2022.06.08 |
11. 캐시(2편) (0) | 2022.06.01 |
10. 캐시(1편) (0) | 2022.06.01 |
9. Proxy(2편) (0) | 2022.05.31 |
- Total
- Today
- Yesterday
- git
- stack
- 완전탐색 알고리즘
- 병렬처리
- Python
- 코딩테스트
- 분할정복
- 동적계획법
- prime number
- SIMD
- 프로그래머스
- heap
- 컴퓨터그래픽스
- C++
- 사칙연산
- Search알고리즘
- 알고리즘
- GDC
- 이분탐색
- Greedy알고리즘
- 자료구조
- hash
- Sort알고리즘
- AVX
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |