참고
Proxy
NOTE
프록시 서버는 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 프로그램을 가리킨다!
•
프록시 서버중 일부는 서버에 요청된 내용들을 캐시를 이용하여 저장해둔다.
•
클라이언트의 기록이 남아, 로그를 관리할 수 있다.
•
방화벽과 접속우회를 제공한다.
End Point
위의 URI와 같이 API를 사용하기 위한 주소를 말한다!
포워드 프록시
NOTE
클라이언트(사용자)가 인터넷에 직접 접근하는게 아니라, 포워드 프록시 서버가 요청을 받고 인터넷에 요청한다.
포워드 프록시 이미지 - 클라이언트가 감춰진다.(클라이언트의 정보 모름)
•
Cache를 사용하여 자주 사용하는 데이터는 요청을 보내지 않고 캐싱 처리를 하기 때문에 성능향상에 도움이됨
•
클라이언트가 요청하는 End Point가 실제 서버 도메인이다!
리버스 프록시
NOTE
클라이언트(사용자)가 인터넷에 데이터를 요청하면 리버스 프록시 서버가 이 요청을 받아 내부 서버에서 데이터를 받은 후 전달한다
리버스 프록시 이미지 - 서버가 감춰진다.(실제 서저 정보를 모름)
•
내부 서버(WAS)에 직접적으로 접근하면, DB와 같은 보안이 필요한곳에 접근이 가능해지기 떄문에 사용한다.
•
로드 밸런싱이나 서버 확장에 유리하다.
•
클라이언트가 요청하는 End Point가 프록시 서버의 도메인이다!
Nginx는 리버스 프록시를 사용하므로 어떤일을 할 수 있는지 사용해보자!
리버스 프록시의 장점
NOTE
리버스 프록시를 사용하면 아래와 같은 장점들이 존재한다!
로드 밸런싱
NOTE
•
클라이언트의 요청을 프록시 서버에 분산하기 위해 로드 밸런싱을 수행해서 성능, 확장성및 신뢰성을 향상시킬 수 있다!
캐싱
NOTE
•
Nginx를 리버스 프록시로 사용하면 미리 렌더링된 버전의 페이지를 캐시하여 페이지 로드 시간을 단축할 수 있다.
•
프록시 서버의 응답에서 수신한 콘텐츠를 캐싱하고 이 콘텐츠를 사용하여 매번 동일한 콘텐츠를 프록시 서버에 연결할 필요 없이 클라이언트에 응답하는 방식으로 동작한다.
SSL 터미네이션
NOTE
•
Nginx는 클라이언트와의 연결에 대한 SSL EndPoint 역할을 할 수 있다.
•
수신 SSL 연결을 처리 및 해독하고 프록시 서버의 응답을 암호화한다.