본문 바로가기

전체 글31

[HTTP 완벽가이드 7장] 캐시 2부.HTTP : HTTP 아키텍처 7장.캐시 웹 캐시는 자주 쓰이는 문서의 사본을 자동으로 보관하는 HTTP 장치다. 7.1 불필요한 데이터 전송 복수의 클라이언트들은 자주 쓰이는 원 서버 페이지에 접근할 때, 서버는 같은 문서를 클라이언트들에게 각각 전송하게 된다. 이 불필요한 데이터 전송은 값비싼 네트워크 대역폭을 잡아먹고 전송을 느리게 만들며, 웹 서버에 부하를 준다. 7.2 대역폭 병목 캐시는 네트워크 병목을 줄여준다. 많은 네트워크가 원격 서버보다 로컬 네트워크 클라이언트에 더 넓은 대역폭을 제공한다. 클라이언트들이 서버에 접급할 때 속도는, 그 경로에 있는 가장 느린 네트워크의 속도와 같다. 클라이언트가 LAN에 있는 캐시로부터 사본을 가져온다면 캐싱은 성능을 대폭 개선할 것이다. LAN .. 2020. 5. 24.
[HTTP 완벽가이드 6장] 프락시 2부.HTTP : HTTP 아키텍처 6장.프락시 프락시는 클라이언트와 서버 사이에 위치하여 그들 사이의 HTTP 메시지를 정리하는 중개인 처럼 동작하는 중개자 역할 6.1 웹 중개자 웹 프락시 서버는 클라이언트 입장에서 트랜잭션을 수행하는 중개인 프락시가 없다면 클라이언트는 서버와 직접 이야기 해야한다. 프락시가 있다면 프락시는 클라이언트 입장에서 서버와 대화를 해준다. 트랙잭션을 완료하는 것이 클라이언트라는 것은 변함없지만 프락시 서버가 제공하는 좋은 서비스를 이용할 수 있다. 1) 개인 프락시과 공유 프락시 프락시 서버는 하나의 클라이언트를 독점할 수 있고 여러 클라이언트를 공유할 수 있다. 공용 프락시 대부분 프락시는 공용 프락시이다. 중앙 집중형 프락시를 관리하는게 더 비용효율이 좋고 쉽다. 캐.. 2020. 5. 24.
[HTTP 완벽가이드 5장] 웹 서버 2부.HTTP : HTTP 아키텍처 5장.웹 서버 5.1 다채로운 웹 서버 웹서버는 HTTP 요청을 처리하고 응답을 제공한다. '웹 서버'라는 용어는 웹 서버 소프트웨어와 웹페이지 제공에 특화된 장비 양쪽 모두를 가르킨다. 웹 서버는 기능, 형태, 크기가 다양하다. 모든 웹 서버는 리소스에 대한 HTTP 요청을 받아서 콘텐츠를 클라이언트에 돌려준다. 1) 웹 서버 구현 웹 서버는 자신이 제공하는 리소스를 관리하고 웹 서버를 설정, 통제, 확장하기 위한 관리 기능을 제공 웹 서버는 HTTP 프로토콜을 구현하고, 웹 리소스를 관리하고, 웹 서버 관리 기능을 제공 웹 서버는 TCP 커넥션 관리의 책임을 운영체제와 나눠 갖는다. 운영체제 운영체제는 TCP/IP 네트워크 지원, 파일 시스템, 연산.. 2020. 5. 24.
[HTTP 완벽가이드 4장] 커넥션 관리 1부.HTTP : 웹의 기초 4장.커넥션 관리 4.1 TCP 커넥션 전 세계 모든 HTTP 통신은 패킷 교환 네트워크 프로토콜의 계층화된 집합인 TCP/IP를 통해 이루어집니다. 커넥션이 이루어지게 되면 클라이언트와 서버 간에 주고받는 메시지들은 손실 혹은 손상되거나 순서가 바뀌지 않고 안전하게 전달됩니다. 웹 브라우저가 TCP 커넥션을 통해서 웹 서버로 보내는 순서는 아래와 같습니다. 브라우저가 호트스명을 추출합니다. 브라우저가 이 호스트 명에 대한 IP 주소를 찾습니다. 브라우저가 포트 번호를 얻습니다. 브라우저가 IP주소의 포트로 TCP 커넥션을 생성합니다. 브라우저가 서버로 HTTP 메소드를 보냅니다. 브라우저가 서버에서 온 HTTP 응답 메시지를 읽습니다. 브라우저가 커넥션을 끊습니다. 1) 신.. 2020. 5. 24.