-
디자인패턴 6. 프록시패턴, 프록시 서버Today I Learned/CS공부 2023. 12. 28. 19:44
프록시 패턴(Proxy pattern)
프록시 패턴은 해당 객체에 접근하기 전 그 접근에 대한 흐름을 가로채, 대상 객체 앞단의 인터페이스 역할을 하는 디자인 패턴이다. 이를 통해 객체의 속성, 변환 등을 보완하며 보안, 데이터 검증, 캐싱, 로깅에 활용하기도 한다.
프록시 서버는 서버와 클라이언트 사이에서, 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용프로그램을 가리킨다. 예를들어 nginx는 비동기이벤트 기반의 구조와, 다수의 연결을효과적으로 처리 가능한 웹 서버이며, 주로 Node.js 서버 앞단의 프록시 서버로 활용된다. 또한, CloudFlare는 웹 서버의 앞단에 프록시 서버로 두어 DDOS(짧은시간동안 네트워크에 많은 요청을 보내 웹사이트의 가용성을 방해하는 사이버 공격)공격 방어나 HTTPS구축에도 쓰인다. (HTTPS는 인증서를 기반으로 구축되나, CloudFlare를 통해 인증서 설치없이 구축할수 있다)
'Today I Learned > CS공부' 카테고리의 다른 글
프로그래밍 - 객체지향 프로그래밍(OOP) (0) 2023.12.31 프로그래밍 - 선언형 프로그래밍, 함수형 프로그래밍 (0) 2023.12.30 디자인패턴 5 - MVC, MVP , MVVM 패턴 (0) 2023.12.26 디자인패턴 4- 이터레이터 패턴, 노출모듈 패턴 (0) 2023.12.24 디자인 패턴 3- 옵저버 패턴, 프록시 객체 (0) 2023.12.23