-
20221003 TIL 포워드 프록시 & 리버스 프록시TIL 2022. 10. 3. 10:22
프록시 서버의 개념을 주말동안 사알짝 익혔는데,
오늘 석태님께서 공유해주신 글에 리버스 프록시라는 용어가 나왔는데,
뭔가 어려운 개념같아서 한 번 찾아보았다.
프록시 서버란 기본적으로 클라이언트와 서버 사이의 중계 서버로, 통신을 대리 수행해주는 역할을 한다.
흔히 말하는 프록시는 포워드 프록시로, 클라이언트와 인터넷 사이에 위치하고, 포워드 프록시가 인터넷에 클라이언트 대신 접속해준다.
따라서 서버에서 클라이언트의 정보를 알 수 없어진다.
그리고 프록시 서버는 여러가지 기능도 할 수 있는데, 캐싱을 해줄 수 있다.
캐싱이란 가져오는 데 비용이 드는 데이터를 임시로 저장해두는 것을 의미한다.
한 번 이미지 등의 리소스를 가져온 뒤에 포워드 프록시에 캐싱을 해두면
클라이언트가 또 요청을 했을 때 인터넷을 통해 서버에게 또 받아올 필요 없이
프록시 서버에서 가져오면 된다!
따라서 전송 시간이나 외부 요청을 줄이는 효과를 얻을 수 있다.
또한 프록시가 대신 인터넷에 접속해주기 때문에 서버에서는 각각의 client IP가 아닌 프록시 서버의 IP를 받게 된다.
따라서 익명성 효과도 얻을 수 있다.
리버스 프록시는 인터넷과 서버 사이에 프록시 서버가 위치한다.
리버스 프록시도 포워드 프록시와 마찬가지로 캐싱 효과를 얻을 수 있다.
클라이언트가 자주 찾을 리소스를 캐싱해두면 전송 시간을 줄일 수 있다.
또한 클라이언트는 요청을 할 때 서버에게 직접 요청하지 않고 리버스 프록시에게 요청하므로
실제 서버의 IP가 노출되지 않고 서버 정보를 클라이언트에게 숨길 수 있다.
그리고 리버스 프록시는 로드 밸런싱 효과도 얻을 수 있다.
로드 밸런싱은 부하를 분산할 수 있게 해주는데,
프록시 서버가 여러 서버에 분산처리할 수 있도록 요청을 나눠주면서 로드 밸런싱을 할 수 있다.
리버스가 붙어서 뭔가 프록시 안에서 무엇인가를 하는 것인가 했는데,
그저 프록시가 클라이언트를 대신해주는지 서버를 대신해주는지에 따라 리버스가 안 붙고 붙는 것으로 이해하면 될 것 같다.
아는 개념이 적을 수록 이해가 안 되는 부분이 많을 수 밖에 없다.
용어가 어려워 보인다고 피하지 말고 한 번 쯤 찾아보자!
'TIL' 카테고리의 다른 글
20221005 TIL 인터페이스가 먼저다 (1) 2022.10.05 20221004 TIL 더 나은 Repository를 위하여 (0) 2022.10.04 20221002 TIL 잊지 말고 해피해피 띵 (0) 2022.10.02 20221001 TIL 돌아가라 머리머리 (0) 2022.10.01 20220930 TIL 인코딩 디코딩 코딩코딩 (1) 2022.09.30