프록시 직역은 대리자
말 그대로 대리 처리
예를 들어 이런 걸
이렇게.
앞에서 먼저 한번 필요한 걸 처리한 뒤 넘길 수 있다.
이렇게 하면 할 수 있는게 어떤 접근을 보고 차단할 수도 있고, 요청 데이터를 가공한다든지 등 할 수 있다.
이런 것도 가능
그래서, 이걸 클라이언트 로직에 손 댈 필요 없이 하려면,
이렇게 서버를 인터페이스로 둬서 서버로직과, 프록시 서버 로직으로 나눔.
그 후 클라이언트가 인터페이스에 의존하게 만들고 의존성 주입하면 됨.
프록시 패턴은 개념임.
클라이언트 -> 서버 간에도 프록시가 가능하고,
객체 -> 객체 간에도 프록시가 가능함.
저렇게 중간에 대리자가 있으면 크게 2가지 일을 할 수 있는데,
접근 제어
특정 요청에 대한 접근 차단, 캐싱, 지연로딩
부가기능 추가
원래 서버의 기능 + 부가기능
예를 들면 시작시간과 끝 시간 로그를 남긴다던지..
요청값이나 응답값을 가공해서 보낸다던지
둘다 형태는 같은데,
의도에 따라서 접근제어는 프록시 패턴,
부가기능 추가는 데코레이션 패턴 이라고 함.
'스프링 > 스프링 핵심 원리 - 고급편' 카테고리의 다른 글
30. 데코레이터 패턴 (0) | 2024.01.19 |
---|---|
29. 프록시 패턴 (0) | 2024.01.19 |
27. 프록시, 데코레이션 패턴 예제 틀 및 요구사항 (0) | 2024.01.19 |
26. 컨트롤러 인터페이스 및 수동 빈 등록 (0) | 2024.01.19 |
25. 템플릿 콜백 패턴 적용 (0) | 2024.01.17 |