2023. 4. 5. 16:19ㆍCloud
◎ 프록시 서버
-> 클라이언트와 서버 간 소통할 때 서버에 바로 접근하지 않고 중간 대리 서버를 통해 서버에 접근하게 한다. 이 대리 서버가 프록시 서버다.
◎ 프록시 서버 종류
-> 프록시 서버는 위치에 따라 Forward Proxy와 Reverse Proxy로 구분한다. 프록시 서버의 위치가 클라이언트에 가까이 있는지, 서버에 가까이 있는지를 기준으로 구분한다.
1. Forward Proxy
-> Forward Proxy는 클라이언트 가까이에 위치한 프록시 서버로 클라이언트를 대신하여 서버에 요청을 전달한다.
-> 주로 캐싱을 제공하는 경우가 많아 사용자가 서비스를 빠르게 사용할 수 있게 한다.
-> 클라이언트는 서비스의 서버가 아니라 프록시 서버와 통신한다. 만약 여러 클라이언트가 동일한 요청을 보내는 경우 첫 번째 응답을 하고 이후 결과 데이터를 캐시에 저장하여 이후 클라이언트에서 같은 요청을 보내는 경우 캐시에 있는 데이터를 사용하기 때문에 서버에 재요청할 필요 없이 클라이언트에게 요청에 대한 응답을 보낼 수 있다.
-> 클라이언트에서 프록시 서버를 거치고 서버에 요청에 도달하기 때문에 서버에서 클라이언트의 IP 추적이 필요한 경우 클라이언트의 IP가 아닌 프록시 서버의 IP가 전달된다. 서버가 받은 IP는 프록시 서버의 IP로 서버에게 클라이언트를 숨길 수 있다.
2. Reverse Proxy
-> Reverse Proxy는 프록시 서버가 서버와 가까운 곳에 위치한다. 이 프록시 서버가 서버를 대신하여 클라이언트에 응답을 보낸다.
-> 클라이언트-서버 구조에서 사용자가 많아져 서버에 과부하가 오는 경우를 대비하여 부하를 분산할 수 있다. 프록시 서버로 요청이 들어오면 여러 대의 서버로 요청을 나눠서 처리할 수 있다.
-> 클라이언트에게 서버를 숨길 수 있다. 클라이언트 입장에서는 요청을 받는 서버가 프록시 서버가 되기 때문에 실제 서버의 IP 주소를 감출 수 있다.