Proxy란?
- 대리(남을 대신하여 일을 처리함) / 대신한다 / 징검다리
- Spring Proxy, Proxy Pattern, Network Proxy(일반적인 Proxy)
- Proxy Server란?
- Client와 Server간의 중계 서버
- 통신을 대리 수행하는 서버
- 캐시 / 보안 / 트래픽 분산 등 여러 장점을 가질 수 있다.
- Forward Proxy (일반적인 프록시)
- 사용자들이 사이트나 어디 접속할 때, 자기 IP를 숨기기 위해 중간에 Porxy를 둬서 이 것을 통해서 Data를 주고 받는다.
- 특징 1 - 캐싱(Client가 요청한 내용을 캐시)
- 전송시간 절약.
- 불필요한 외부 전송 안해도 됨.
- 외부 요청 감소 → Network 병목현상 방지
- 특징 2 - 익명성 (Client가 보낸 요청을 감춤)
- Server가 응답받은 요청을 누가 보냈는지 알지 못하게!
(Server가 받은 요청 IP = Proxy IP)
- Reverse Proxy
- Client에게서 Server 정보를 감추는 것
- 특징 1 - 캐싱
- 특징 2 - 보안 (Server정보를 Client로 숨김)
- Client는 Reverse Proxy를 실제 서버라고 생각하여 요청
→ 실제 서버 IP는 노출되지 않는다.
- 특징 3 - Load Balancing (선택적)
- 부하분산 : 해야될 작업을 나누어 서버의 부하를 분산 시키는 것
- Load Balancer란?
- 여러대의 Server가 분산 처리할 수 있도록 요청을 나누어지는 서비스
- 종류 : L2, L3, L4, L7
- L2 : Mac 주소를 바탕으로 Load Balancing
- L3 : IP 주소를 바탕으로 Load Balancing
- ⭐️ L4
- Transport Layer(IP & Port) Level에서 Load Balancing
(TCP / UDP)
- ⭐️ L7
- Application Layer(User Request) Level에서 Load Balancing
(HTTPS / HTTP / FTP)
- 블로그 접속 → /category, /search 담당 서버들로 Load Balancing
- Attack
- Tool