서버 이중화 (리버스 프록시)


DNS 라운드로빈이나 로드밸런서는 액세스를 라우터가 배분하지만, web 서버가 요청에 직접 응답했다.
거기서 (`클라이언트와 web 서버 사이`)에서 리퀘스트를 대신하여 처리하는 것이 리버스 프록시 이다.
![리버스](https://blog.kakaocdn.net/dn/c2g0TC/btq5h0gn2Lj/hRheXVb7RfsxF3amLhN9DK/img.jpg) 로드 밸런서와의 큰 차이점은 `web 서버는 클라이언트에게가 아니라 리버스 프록시에 응답을 반환`한다는 점이다.
reverse proxy가 클라이언트에 응답을 반환한다.
--- * #### 무엇이 좋은가? 리버스 프록시가 사이에 끼워진 것으로 다양한 전후 처리가 가능 * IP 필터링 가능
특정 IP 주소만 액세스를 허용 등 * URL 다시 만들기
"?user=hkpark&age=28" 같이 URL이 긴 경우 변환해서 Web서버에 전송 가능 * 메모리 활용도 향상 ~(이부분 요약 필요)~
동적 리퀘스트(ex> 페이지 접속)와 정적 리퀘스트(ex> 그 페이지에 있는 사진 4장 요청)가 있을때
그 리퀘스트의 처리의 메모리 활용도와 상관없이 스레드(프로세스)를 사용하게 됨 (1동적 + 4정적) = 총 5 스레드를 사용하게 됨
가벼운 정적 처리에도 스레드를 사용하게 되는 것이 문제
__여기서 리버스 프록시가 URL을 보고 동적 리퀘스트면 WAS로 정적 리퀘스트면 Web Server로 구분해서 보냄__
그러면 이미지 30장을 리퀘스트하는 처리도 WAS가 아닌 Web Server가 처리하여 메모리 효율이 높아짐
되돌아가기 수정