https://thebook.io/080326/0027/ | 전체 참고
1. 프록시 서버
2. 프록시패턴의 정의
3. 프록시패턴의 특징
4. 프록시패턴의 장점
5. 프록시패턴의 사용
6. 프록시패턴의 단점
+) 스프링 AOP - Dynamic Proxy
서버와 클라이언트 사이에서 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템 및 응용 프로그램을 말한다
프록시 서버로 쓰는 CloudFlare
: CDN 서비스로, 전세계적으로 분산된 서버가 있고, 이를 통해 시스템의 콘텐츠 전달을 빠르게 할 수 있다.
:웹 서버 앞단에 두어서, DDOS 공격 방어, HTTPS 구축 등이 가능하다.
CORS와 프론트엔드의 프록시서버
: CORS(cross-origin resource sharing)는 서버가 웹 브라우저에서 리소스를 로드할 때 다른 오리진을 통해 로드하지 못하게 하는 HTTP 헤더 기반 메커니즘
: 프론트엔드 개발할 때, 프론트와 백엔드 서버끼리 통신할 때, 주로 CORS에러를 마주치는데, 이를 해결하기 위해 프론트엔드에서 프록시 서버
를 만든다
CORS 해결방법 | CORS 에러에는 다양한 해결 방법이 있다. 그중 내가 참고한 해결방법 링크
그전에 프록시(Proxy)란? 대리자, 대변인의 의미 -> 프록시에게 어떤일을 대신 시키는 것!
즉, 어떤 객체를 사용하고자 할 때, 직접적으로 참조하는 대신, 해당 객체를 대항하는 객체를 통해 대상 객체에 접근하는 패턴
저렇게 접근하는 게 어떤 이점이 있어서 하는걸까?
접근 객체에 민감한 정보
가 있거나, 인스터스화하기에 무겁거나, 추가 기능을 더하고 싶은데 원본을 수정할 수 없을 때의 상황에서 좋다
SRP 단일 책임 원칙
준수할 수 있다 (왜냐면 대상 객체는 원래 기능에만 집중하고, 부가적 기능은 프록시 객체에 맡기기 때문에, 다중 책임을 회피할 수 있다)