필터 1
딜리버리 암호화 모듈 개발기
마켓컬리
백엔드

딜리버리 암호화 모듈 개발기

배송시스템용 암호화 모듈을 직접 개발하고 자동 암/복호화, 봉투암호화, 종속성 최소화 전략을 정리했습니다. 테스트와 성능 측정으로 엣지케이스와 운영 적합성도 검증했습니다.

#JPA#Hibernate
5200
카카오페이 여신코어 DDD(Domain Driven Design, 도메인 주도 설계)로 구축하기
카카오페이
아키텍처

카카오페이 여신코어 DDD(Domain Driven Design, 도메인 주도 설계)로 구축하기

카카오페이 여신코어를 DDD와 멀티모듈 구조로 내재화한 과정을 공유했습니다. 도메인 경계, 공통 언어, Entity 분리를 통해 복잡한 여신 업무를 견고하게 설계한 사례입니다.

#DDD#Spring Boot
20800
Kotlin과 JPA의 한계 극복: 빌링 시스템 고도화 과정
데보션
백엔드

Kotlin과 JPA의 한계 극복: 빌링 시스템 고도화 과정

Kotlin과 JPA의 한계를 빌링 시스템 고도화 과정에서 정리하고 jOOQ와 JDBC로 전환한 사례를 소개했습니다. 복잡한 쿼리 표현력, 불변 객체 설계, 운영 안정성을 함께 개선했습니다.

#Kotlin#Spring Boot
25200
코드 사례로 보는 Domain-Driven 헥사고날 아키텍처
카카오스타일
아키텍처

코드 사례로 보는 Domain-Driven 헥사고날 아키텍처

Domain-Driven 헥사고날 아키텍처를 PDP 서비스 코드 사례로 설명했습니다. Port와 Use Case 분리, 애그리거트 모델, 테스트 용이성 등 운영 장점을 다뤘습니다.

#DDD#헥사고날 아키텍처
8300
10년 된 레거시를 현대화하다 - Part.2: 매장 도메인의 구현 여정
올리브영
아키텍처

10년 된 레거시를 현대화하다 - Part.2: 매장 도메인의 구현 여정

레거시에서 매장 도메인을 분리하기 위한 멀티모듈 아키텍처와 CQRS 적용 과정을 소개했습니다. 또한 Entity와 VO를 추상화해 도메인 모델을 구현한 사례를 설명했습니다.

#DDD#JPA
3500
JPA Transactional 잘 알고 쓰고 계신가요?
카카오페이
백엔드

JPA Transactional 잘 알고 쓰고 계신가요?

JPA `Transactional`과 DB 쿼리 성능의 관계를 설명하는 글입니다. 트랜잭션 적용 방식에 따라 쿼리 특성과 성능 영향이 달라질 수 있음을 다룹니다.

#JPA#transaction
10700
포스타입 정산 시스템 이관기 2
포스타입
백엔드

포스타입 정산 시스템 이관기 2

정산 시스템을 PHP에서 Java 기반 Job Runner로 이관한 과정과 테크 스펙, 테스트, 마이그레이션 전략을 설명했습니다. 또한 URI 인코딩, Reader 페이징, timeout 등 트러블 슈팅 사례와 개선 효과를 정리했습니다.

#Spring Batch#WebClient
1800
당근페이 재무 결산 사례로 보는 백엔드와 데이터의 만남
당근마켓
백엔드

당근페이 재무 결산 사례로 보는 백엔드와 데이터의 만남

매월 반복되던 재무 결산을 Spring Batch와 코드 중심 구조에서 Airflow와 dbt 기반 데이터 파이프라인으로 전환했습니다. SQL 수정만으로 결산 대응이 가능해져 유연성과 가시성을 높였습니다.

#Airflow#dbt
4200
[SpringBatch 연재 06] JpaPagingItemReader로 DB내용을 읽고, JpaItemWriter로 DB에 쓰기
데보션
백엔드

[SpringBatch 연재 06] JpaPagingItemReader로 DB내용을 읽고, JpaItemWriter로 DB에 쓰기

Spring Batch에서 `JpaPagingItemReader`로 JPA 엔티티를 페이지 단위로 읽고 `JpaItemWriter`로 DB에 저장하는 방법을 소개했습니다. 또한 페이지 기반 처리의 누락 가능성과 JPA writer 설정상의 주의점도 함께 설명했습니다.

#Spring Batch#JPA
2600
Querydsl에서 Kotlin JDSL 으로
spoqa
백엔드

Querydsl에서 Kotlin JDSL 으로

Querydsl의 kapt 의존성과 유지보수 한계를 이유로 Kotlin JDSL로 전환한 과정을 정리했습니다. 후보 라이브러리 비교와 팀 단위 전환 방법까지 함께 소개했습니다.

#Querydsl#Kotlin
4900
이커머스 플랫폼의 주문 DB 마이그레이션 경험기
라인
백엔드

이커머스 플랫폼의 주문 DB 마이그레이션 경험기

Oracle 주문 DB를 MySQL로 이관하면서 모델과 ID 채번 방식을 함께 재설계했습니다. 읽기·쓰기 성능을 개선하고 정합성과 동시성 문제를 단계적으로 해결했습니다.

#MySQL#Oracle
4500
Spring Boot에서 MyBatis 적용
씨앤텍시스템즈
백엔드

Spring Boot에서 MyBatis 적용

Spring Boot에 MyBatis를 적용하는 기본 구성과 조회 예제를 정리했습니다. 의존성 추가부터 mapper XML, service, controller 연결과 결과 확인까지 설명했습니다.

#Spring Boot#MyBatis
1900
JPA 배치 인서트 vs JDBC배치 인서트
넥스트리
백엔드

JPA 배치 인서트 vs JDBC배치 인서트

대용량 데이터 등록에서 JPA 배치와 JDBC 배치를 직접 비교해 성능을 확인했습니다. 단일 MySQL 환경에서는 JDBC 템플릿 배치를 선택해 생산성과 속도를 함께 높였습니다.

#JPA#JDBC
2900
기능 테스트 전환 이야기
spoqa
백엔드

기능 테스트 전환 이야기

기능 테스트로 전환한 배경과 통합 테스트의 한계를 설명한 글입니다. Hibernate와 Spring 이벤트 처리로 인한 실제 버그 사례를 통해 전환 이유를 정리했습니다.

#Hibernate#Spring Framework
1500