본문 바로가기

전체 글

(58)
[Finally Spring] 4. AOP 개념과 코드구현 요약 AOP는 OOP의 클래스 단위로 객체를 나누어 불필요한 중복이 발생하는 단점을 극복하기 위해 핵심기능과 부가기능을 기준으로 모듈화한다. 핵심기능(Core Concerns)은 비즈니스 로직과 관련된 모듈이며, 부가기능(횡단관심사, Cross-cutting Concerns)은 핵심 기능에 공통적으로 필요한 모듈이다. 부가기능은 반드시 핵심기능과 함께 사용되며, 핵심 기능과 합쳐져 하나의 객체처럼 사용한다. 부가기능을 분리해 객체를 가볍고 간결하게 만들며, 불필요한 반복을 방지한다. AOP(Aspect-Oriented Programming) 관점지향 프로그래밍. 애플리케이션을 구성하는 모듈을 나누는 기준을 기능이 아닌 ‘관심사 관점’으로 전환하여 나누는 기법. 개별 객체의 공통된 관심사를 횡단 관심사(c..
로드 밸런서(Load Balancer) 개념 로드 밸런서(Load Balancer) 서버(Server)에 가해지는 부하(Load)를 분산시키는 장치나 기술. 클라이언트와 서버 사이에서 서버 트래픽을 관리합니다. 서버 트래픽 처리 방식 중 스케일 아웃(Scale-out)에 해당합니다. 서버 트래픽 처리 방식? 1. Scale-up 물리적으로 서버의 사양을 높이는 방법. 서버의 수를 늘리지 않고 프로그램 구현에 있어 변화가 필요없다는 장점이 있습니다. 하지만 서버의 사양을 높이는데엔 굉장히 높은 비용이 들고, 하드웨어의 업그레이드엔 한계있다는 큰 단점이 있습니다. 2. Scale-out Scale-Out은 서버의 갯수를 늘려 하나의 서버에 줄 부하를 분산시키는 방법입 많은 요청이 오더라도 여러대의 서버가 나눠서 처리를 하기 때문에 서버의 사양을 높이지..
프록시 서버(Proxy Server) 개념 프록시 서버(Proxy Server) Proxy는'대리','위임'을 뜻하는 단어로, 프록시 서버(Proxy Server)는 클라이언트가 서버와 소통할 때, 서버에 바로 접근하지 않고 자신을 통해 서버에 접근할 수 있도록 해주는 일종의 대리 서버 프록시 서버의 종류 프록시 서버는 위치에 따라 Forward Proxy와 Reverse Proxy 두 가지로 나뉩니다. 간단하게 말하자면 프록시 서버가 클라이언트에 가까이 있는지, 서버에 가까이 있는지로 구분할 수 있습니다. 각각 다른 목적을 기대하기 때문에 상황을 고려하여 판단을 내릴 수 있습니다. 1. Forward Proxy Forward Proxy는 위의 그림과 같이 클라이언트 가까이에 위치한 프록시 서버로 클라이언트를 대신해 서버에 요청을 전달합니다. 캐..