프록시 서버
프록시 서버란??
- 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램을 뜻한다.
- 서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 가리켜 프록시(Proxy), 그 중계 기능을 하는 것을 프록시 서버(Proxy server) 라고 부른다.
프록시 서버 종류
Forward Proxy
- 일반적인 프록시는 Forward Proxy를 뜻한다. 클라이언트가 리소스를 서버에게 요청할 때 직접 요청하지 않고 프록시 서버를 통해 요청하는 방식을 뜻한다.
- 프록시 서버가 클라이언트와 인터넷 망 사이에 위치한다.
- 서버의 입장에서는 클라이언트가 누구인지 확인할 수 없다.
Reverse Proxy
- Forward Proxy 와 반대 방향으로 생각하면 된다. 즉 클라이언트가 리소스를 요청할 때 프록시 서버에게 요청을 하게 되며 프록시 서버는 내부 서버로부터 받은 리소스를 클라이언트에게 전달하게 된다.
- 프록시 서버가 인터넷 망과 내부 서버 사이에 위치한다.
- 클라이언트 입장에서는 서버가 누구인지 확인할 수 없다.
프록시 서버 사용시 장점
1. 보안
- Forward, 혹은 Reverse에 따라서 클라이언트나 서버 모두를 숨길 수 있으므로 보안을 강화시킬 수 있다.
2. 캐싱
- 일부 프록시 서버는 요청된 리소스들을 캐싱하여 서버의 호출을 다시 하지 않고 기존 리소스를 재사용할 수 있다. 때문에 데이터 전송시간을 줄일 수 있고 외부 트래픽을 줄임으로써 네트워크 병목 현상도 방지할 수 있다.
3. 트래픽 분산
- 일부 프록시 서버는 내부 서버의 정보를 알고 있기 때문에 로드 밸런싱을 통해 요청을 조절하여 여러개의 서버가 있다면, 트래픽을 분산시킬 수 있다.
로드밸런싱
: 여러개의 서버에 작업 처리량을 분산시켜 퍼포먼스를 향상시키기 위한 것
Reference