<Spring> AOP 발전과정 살펴보기 1
스프링 AOP는 공통적인 횡단 관심사 영역을 프록시를 통해 한 곳에 모아서 Aspect로 관리하는 프로그래밍 패러다임이다. 공통 관심사의 대표적인 예는 로깅,트랜잭션,보안 처리 등이 있을 수 있다. 이러한 공통 관심사들을 비즈니스 로직에서 분리한다라는
스프링 AOP는 공통적인 횡단 관심사 영역을 프록시를 통해 한 곳에 모아서 Aspect로 관리하는 프로그래밍 패러다임이다. 공통 관심사의 대표적인 예는 로깅,트랜잭션,보안 처리 등이 있을 수 있다. 이러한 공통 관심사들을 비즈니스 로직에서 분리한다라는
Spring MVC를 공부해보니 DispatcherServlet이라는 클래스가 맡고 있는 역할이 중요하다는것을 알게 된다.해당 포스트는 DispatcherServlet을 중심으로 어떻게 Spring MVC가 HTTP 요청을 처리하는지 정리한 글이다. MVC 패턴 본격적으로 Spring 얘기를 하기 전에 MVC 패턴이 어떤
kubectl이란 k8s 클러스터의 control plane과 통신하기 위한 명령줄 인터페이스입니다. 즉, 생성된 클러스터에 명령어를 사용하기 위해 필요한 도구입니다. 이번 글에서는 kubectl을 로컬 환경에 설치하여 클라우드 장비에 구동된 클러스터에 명령어를 보내는 방법을 알아보겠습니다. kubeConfig 파일이
자바에서의 스레드는 아래와 같이 곱게 Sleep 되지 않는다. 항상 이때마다 try - catch를 통해 InterruptedException 를 처리해 주곤 했는데 이번 기회에 이에 대한 정리를 해본다. Java Thread의 Interrupt java에서의 interrupt의 개념은 다음과 같다.
Arcus의 Java Client는 간략하게 아래와 같은 메커니즘으로 인해 동작한다. 1. 응용 WAS의 api 호출 2. Java Client에서 해당 api에 알맞은 Operation 인스턴스 생성 3. 생성된 Operation 인스턴스를 Queue에 삽입 4. 하나의 IO Thread(
현업 4개월차 운영체제 공룡 책에서 듣기만 하고 보기만한 동시성 문제들에 대한 썰을 풀어보겠다. 전역 변수에 동시에 접근할 때 만났던 문제와, Race Condition이 발생할 수 있는 지점임을 예상하여 수정해본 문제까지 얘기해본다.총 2개의 포스팅으로
자바 7이 등장하기 전까지는 데이터 컬렉션을 병렬로 처리하기 어려웠습니다.이번 장에서는 자바7에 포함된 포크 조인 프레임워크와 병렬 스트림이 어떻게 처리되는지 알아보겠습니다. 병렬 스트림 컬렉션에 stream() 대신 parallelStream()을 호출하면 쉽게 병렬 스트림을 생성
입사한지 약 1달이 넘어가는 시점에 처음으로 프로덕트 리팩토링이 아닌 업무가 할당되었다.제목에서 유추 가능하듯이 현재 사용중인 쓰레드풀에서 최적의 쓰레드의 개수를 찾는 업무였다. 처음 작업을 시작할 때는 리팩토링이 아니라는 사실만으로도 즐거웠다.하지만 이슈 분석을
분할 분할은 분할 함수라 불리는 프리디케이트를 분류 함수로 사용하는 특수한 그룹화 기능입니다.분할 함수는 불리언 값을 반환하기 때문에 그룹화된 Map의 Key의 Type은 Boolean입니다.결과적으로 그룹화된 Map의 Key는 True or False만을 가지는 두 개의
지금까지 배운것으로 스트림을 한 마디로 요약하면 데이터 집합을 효율적이고 Lazy하게 처리하는 반복자라고 알 수 있습니다.또한 스트림의 연산들은 filter 또는 map 같은 중간 연산과 count,findFirst,forEach,reduce 등의 최종 연산으로 구분할 수