Engineering/Network
-
[HTTP 완벽 가이드] 10장. HTTP/2.0Engineering/Network 2021. 10. 16. 23:24
HTTP/2.0 HTTP/2.0 의 등장 배경 HTTP/1.1의 메시지 포맷은 구현의 단순성과 접근성에 주안점을 두고 최적화되었다. HTTP/1.1은 커넥션 하나를 통해 요청 하나를 보내고 그에 대한 응답 하나만을 받는 방식이다. 응답을 받아야만 다음 요청을 보낼 수 있기 때문에 회전 지연(latency)을 피할 수 없다. 이 문제를 피하기 위해 병렬 커넥션이나 파이프라인 커넥션이 도입되었지만 성능 개선에 근본적인 해결책은 되지 못했다. 이를 해결하기 위해 구글은 SPDY 프로토콜을 개발했다. SPDY 프로토콜은 헤더를 압축하여 대역폭을 절약하고, 클라이언트가 요청을 보내지 않아도 서버가 능동적으로 리소스를 푸시하는 기능도 갖추고 있다. HTTP/2.0 은 SPDY를 기반으로 설계되었다. 개요 HTTP/..
-
[HTTP 완벽 가이드] 9장. 웹 로봇Engineering/Network 2021. 10. 16. 22:01
웹 로봇 웹 로봇은 사람과의 상호작용 없이 연속된 웹 트랜잭션들을 자동으로 수행하는 소프트웨어 프로그램이다. 많은 로봇이 웹 사이트에서 다른 웹 사이트로 떠돌아다니면서, 콘텐츠를 가져오고, 하이퍼링크를 따라가고, 그들이 발견한 데이터를 처리한다. 웹 로봇들은 그 방식에 따라 '크롤러', '스파이더', '웜', '봇' 등 다양한 이름으로 불린다. 크롤러와 크롤링 웹 크롤러는 웹 페이지를 한 개 가져오고, 그 다음 페이지가 가리키는 모든 웹 페이지를 가져오고, 다시 그 페이지들이 가리키는 모든 웹 페이지들을 가져오는 재귀적 방식으로 웹을 순회한다. 웹 링크를 재귀적으로 따라가는 로봇을 크롤러 혹은 스파이더라고 부른다. 이 문서들은 검색 가능한 데이터베..
-
[HTTP 완벽 가이드] 7장. 캐시Engineering/Network 2021. 10. 10. 00:39
캐시 캐시를 이용하면 다음과 같은 장점이 있다. 불필요한 데이터 전송을 줄여서, 네트워크 비용을 절감해준다. 네트워크 병목을 줄여서 대역폭을 늘리지 않고도 페이지를 빨리 불러올 수 있다. 원 서버에 대한 요청을 줄일 수 있다. 페이지를 먼 곳에서 불러올수록 지연시간이 많이 걸리지만, 캐시는 거리로 인한 지연을 줄여준다. Cache hit, Cache miss 캐시에 요청이 왔을 때, 해당 요청이 캐싱되어 있다면 바로 응답한다. (Cache hit) 캐시에 요청이 왔을 때, 해당 요청이 캐싱되어 있지 않다면 원 서버로 요청을 전달한다. (Cache miss) 재검사 캐시는 최신 상태인지 점검해야 한다. 모든 데이터를 검사하기에는 네트워크 대역폭 문제로 인해 해당 데이터가 검사가 필요할 정도로 오래된 경우에..
-
[HTTP 완벽 가이드] 6장. 프록시Engineering/Network 2021. 10. 2. 17:38
웹 프록시 웹 프록시는 클라이언트와 서버 사이에 위치하여 HTTP 메시지를 정리하는 중개인처럼 동작한다. 프록시와 게이트웨이 프록시는 같은 프로토콜을 사용하는 둘 이상의 애플리케이션을 연결한다. 게이트웨이는 서로 다른 프로토콜을 사용하는 둘 이상을 연결한다. 프록시 서버의 배치 Egress Proxy 로컬 네트워크와 더 큰 인터넷 사이를 오가는 트래픽을 제어하기 위해 로컬 네트워크의 출구에 위치시킬 수 있다. Ingress Proxy 클라이언트의 모든 요청을 종합적으로 처리하기 위해 위치시킨다. Reverse Proxy 네트워크의 가장 끝에 있는 웹 서버들의 바로 앞에 위치한다. 웹 서버로 향하는 모든 요청을 처리하고 필요할 때만 웹 서버에게 자원을 요청할 수 있다. 웹 서버에 보안 기능을 추가하거나 빠..