Yun Blog

기술 블로그

Spring Batch Reader 성능 분석 및 측정 part 2

HibernateCursorItemReader 측정 및 분석

Spring Batch Reader 성능 분석 및 측정 part 1 이어지는 글입니다. HibernateCursorItemReader HibernateCursorItemReader를 이해하기 앞서 JDBC를 이용하여 대량의 데이터를 가져오는 방에 대해서 이야기해보겠습니다. 이론적인 설명은 Real MySQL을 보고 정리했습니다. MySQL를 사용 중이......

Spring Batch Reader 성능 분석 및 측정 part 1

JpaPagingItemReader, QueryDslNoOffsetPagingReader 측정 및 분석

스프링 배치 애플리케이션에서 데이터베이스의 대량의 데이터를 처리할 때 Reader에 대한 성능 분석과 성능에 대한 측정을 정리한 포스팅입니다. 조회 대상 1234567891011121314# created_at 인덱스CREATE TABLE `payment`( `id` bigint(20) NOT NULL AUTO_INCREME......

Kotlin 기반 경량 ORM Exposed

Jetbrains Kotlin ORM Exposed

Exposed 포스팅 Kotlin 기반 경량 ORM Exposed Kotlin 기반 경량 ORM Exposed 추가 정리 part 2 Kotlin 기반 경량 ORM Exposed 추가 정리 part 3 해당 코드는 Github 공개되어 있습니다. Exposed 란 ? Exposed는 JetBrains에서 만든 Kotlin 언어 기반의 ORM 프......

Spring 레플리케이션 트랜잭션 처리 방식

대부분의 서비스에서는 데이터베이스를 Master, Slave 구조로 Master에서는 Create, Update, Delete 업무를 진행하고 Slave에서 Read 업무를 진행하는 구조로 설계합니다. Spring의 Master, Slave 환경에서의 트랜잭션에 대해서 포스팅해보겠습니다. 레플리케이션 MySQL 레플리케이션 MySQL은 위와 같은 구......

Kotlin으로 Spring 개발할 때

코틀린 기반으로 스프링 프레임워크를 사용하는 경우 다양한 플러그인의 도움으로 보다 쉽게 개발을 진행할 수 있습니다. 어떤 플러그인이 있고 그것이 어떤 역할을 하는지에 대해서 정리해 보았습니다. Kotlin Plugin 1234plugins { kotlin("plugin.spring") version "1.4.32" kotlin("p......

Ktlint 코드 스타일 검사

ktlint는 Kotlin의 공식 가이드 기반으로 코드 스타일을 검사해 주는 도구입니다. gradle plugin을 통해서 보다 쉽게 설정할 수 있는데 해당 부분에 대해서 포스팅하겠습니다. ktlint-gradle jlleitschuh-ktlint-gradle 그레이들 플러그인 중에서 가장 많이 사용하는 jlleitschuh-ktlint-gradle으......

Batch Insert 성능 향상기 2편 - 성능 측정

JPA + MySQL + GenerationType.IDENTITY 조합으로는 Batch Insert를 사용할 수 없습니다. 자세한 내용은 Batch Insert 성능 향상기 1편 - With JPA에서 자세하게 정리했습니다. JPA의 단일 insert와, batch insert의 성능적인 차이가 얼마나 발생하는지 측정해보고 batch insert를 ......

Batch Insert 성능 향상기 1편 - With JPA

성능 향상을 위해서 Batch Insert를 도입하는 과정 중 JPA, Mysql 환경에서의 Batch Insert에 대한 방법과 제약사항들에 대해서 정리했습니다. 결과적으로는 다른 프레임워크를 도입해서 해결했으며 본 포스팅은 JPA Batch Insert의 정리와, 왜 다른 프레임워크를 도입을 했는지에 대해한 내용입니다. Batch Insert 란 ......

Spring Batch Test 작성 방법 및 고찰

Spring Batch Test Code 스프링 배치 애플리케이션 테스트 코드를 작성하면서 만났던 이슈와 그에 따른 나름의 고찰을 정리한 포스팅 내용입니다. 배치를 사용하지 않더라도 스프링 기반으로 테스트를 작성하는 경우에도 도움 되는 내용들이 있습니다. @SpringBatchTest Spring Batch 4.1 버전 부터는 @SpringBatchT......

Spring Batch Application 개발하면서 나름의 고찰 정리

현재는 Spring Batch Application 개발을 대부분 개발을 하고 있어, 해당 프레임워크로 개발을 진행하면서 내 나름대로의 고찰을 정리해볼까 한다. 2 ~ 10 개 정도의 배치 애플리케이션을 개발을 하고 크게 늘어날 가능성이 없다면 이 내용을 따르지 않는 것이 더 효율적이라고 생각한다. 본 포스팅은 배치 애플리케이션을 주로 개발하며 그 배......