2017년 8월 25일 금요일

Srping AOP와 proxy 관련 내용

Aop : aspect oriented programming
-비니지스 로직은 아니지만 반드시 해야하는 작업(로그,트랜잭션처리)
-개발의 핵심적인 비지니스 로직에만 집중하고 나머지 부가기능은 설정을 통해서 조정해라

 Aspect: 공통관심사(로깅, 보안, 트랜잭션)
 Advice: 실제로 기능을 구현한 객체
 Join points: 공통관심사를 적용할 대상. Spring AOP에서는 각 객체의 메소드가 이에 해당
                  (작성된 Advice가 들어갈 수 있는 메소드)
 Pointcuts : 여러 메소드 중 실제 Advice가 적용될 대상 메소드
                 (이것을 통해 Advice가 적용된 형태로 동작)
 target : 대상 메소드를 가지는 객체

 Aop에서의 proxy : Advice가 적용되었을때 만들어지는 객체]
 Introduction: target에는 없는 새로운 메소드나 인스턴스 변수를 추가하는 기능
 Weaving : advice와 target이 결합되어서 프록시 객체를 만드는 과정

proxy: 대리인, 바깥쪽 객체, 웹 클라이언트의 요청 URL를 해당 서버가 아닌 프록시 서버로 요청
- se.naver.com에 request 를 하면 내 IP를 가지고 그 웹서버에 바로 접속되는 것이 아니라
  '프록시 서버'로 요청을 전송하고 서버는 대리인을 데리고 웹서버에 가서 데이터를 주고 받고
  다시 '프록시 서버'를 통해 내 브라우져로 데이터를 가져옴

   clinet < - > proxy server < - > naver.com

댓글 없음:

댓글 쓰기