• Apache HttpClient Connection Management

    Apache HttpClient Connection Management 아파치 HttpClient는 지속 커넥션을 지원한다. HttpConnectionManager Http 커넥션은 복잡하고, stateful하며 thread-safe하지 않다. 따라서 제대로 동작하게 하기 위해서는 제대로 관리해주어야 한다. Http 커넥션을 여러 스레드에서 동시에 사용하면 안된다. HttpClient는 Http 커넥션을 관리하기 위해 HttpClientConnectionManager를 사용한다. HttpClientConnectionManager의 역할은 다음과 같다. 새로운 Http 커넥션 생성 지속 커넥션 라이프사이클 관리...


  • JPA 캐시

    JPA 캐시 이 글은 “ORM 표준 JPA 프로그래밍” 책의 16장을 정리한 내용입니다. 만약 저작권 관련 문제가 있다면 “gunjuko92@gmail.com”로 메일을 보내주시면, 바로 삭제하도록 하겠습니다. 1차 캐시와 2차 캐시 네트워크를 통해 데이터베이스에 접근하는 시간 비용은 애플리케이션 서버에서 내부 메모리에 접근하는 시간 비용보다 수만에서 수십만 배 이상 비싸다. 따라서 조회한 데이터를 메모리에 캐시해서...


  • 카프카, 데이터 플랫폼의 최강자 - 카프카 컨슈머

    이 글은 “카프카, 데이터 플랫폼의 최강자” 책 내용을 정리한 글입니다. 만약 저작권 관련 문제가 있다면 “gunjuko92@gmail.com”로 메일을 보내주시면, 바로 삭제하도록 하겠습니다. 카프카 컨슈머 컨슈머의 주요 기능은 특정 파티션을 관리하고 있는 파티션 리더에게 메시지 가져오기 요청을 하는 것이다. 각 요청은 로그의 오프셋을 명시하고 그 위치로부터 로그 메시지를 수신한다. 그래서 컨슈머는 가져올...


  • 토비의 스프링 - 스프링 핵심기술의 응용 (2)

    이 글은 “토비의 스프링” 책 내용을 정리한 글입니다. 만약 저작권 관련 문제가 있다면 “gunjuko92@gmail.com”로 메일을 보내주시면, 바로 삭제하도록 하겠습니다. 토비의 스프링 - 스프링 핵심 기술의 응용 2 4. 인터페이스 상속을 통한 안전한 기능확장 애플리케이션을 새로 시작하지 않고 특정 SQL의 내용만을 변경하고 싶다면 어떻게 해야 할지 생각해보자. 기능의 변경 또는 추가에...


  • 토비의 스프링 - 스프링 핵심기술의 응용 (1)

    이 글은 “토비의 스프링” 책 내용을 정리한 글입니다. 만약 저작권 관련 문제가 있다면 “gunjuko92@gmail.com”로 메일을 보내주시면, 바로 삭제하도록 하겠습니다. 스프링 핵심 기술의 응용 (1) 1. SQL과 DAO의 분리 기존 DAO의 문제점 : SQL이 DAO와 분리 되지 않았기 때문에, SQL이 변경이 필요한 상황이 발생하면 SQL을 담고 있는 DAO 코드가 수정될 수...