Spring Boot

회사의 WAS 서버 API를 개발 도중 공유하는 데이터에 접근해 이를 할당받는 API가 있다.이 API를 코드리뷰 하던 도중, 프로님 한 분이 동시성 이슈가 들 수 있다고 이야기해 주셔서 이에 관해 글을 정리해 보려 한다.  현재 사내 데이터베이스는 아래와 같이 구성되어 있다. (예시)(테이블들, 프로젝트들이랑   동시성 제어와 동시성 제어 방안 분석동시성 제어에는 여러 방안이 있지만 이번에는 낙관적 락, 비관적 락, Redis pub/sub(분산 락), kafka messaging 기법을 분석해 보았다. 동시성 제어 : 낙관적 락(Optimistic Lock)트랜잭션 충돌이 적을 것이라 예상하고, 트랙잭션에 잠금을 걸지 않은 상태로 데이터를 조회하여,수정하는 시점(트랜잭션의 최종 커밋 단계)에 검증해 ..
이전 게시글 : https://wn1331.tistory.com/253 Spring Batch 5 - 2. Batch 설정하기, Job 이전 포스팅에서 했던 프로젝트에서 추가로 Batch 설정을 추가한다. 1. Spring Batch MetaData란? 메타데이터 테이블은 Spring Batch 프레임워크에서 배치 작업의 실행 정보를 저장하는 데이터베이스 테이 wn1331.tistory.com Step에 대해서 tonylim님의 블로그에서 내용을 참조했다. https://tonylim.tistory.com/431 스프링 배치 실행 - Step StepBuilderFactory 1. StepBuilderFactory - StepBuilder를 생성하는 팩토리 클래스로서 get(String name) 메서드..
회사에서 신규 프로젝트를 하는데, 배치 서버를 구축하는 업무를 내가 맡게 되었다. 포스팅은 배치 서버를 구축하는 방법, Job을 생성하고 Tasklet 기반 Step과 Chunk 기반 Step에 대해서 다루어 볼 것이고, Chunk기반 Step은 스프링에서 기본적으로 제공하는 Reader와 Writer에 대해서 다루어 볼 것이다. 업무는 멀티모듈과 스키마 기반 멀티테넌시 환경에서, 배치 서버를 구축하는 것인데, 이는 추후에 포스팅할 것이다. 첫 글에서는, 최신 스프링 배치 버전인 Spring Batch 5의 특징을 알아보고, 간단하게 구축하는 방법을 알아보자. 1. Spring Batch 5 변경점 https://docs.spring.io/spring-batch/docs/current/reference/..
· DEV/MSA
MSA 개발 가이드 목차 Spring Boot Spring Cloud 응용프로그램 개발 분야는 Spring 프레임워크의 유례없는 성장과 함께 더 간결하고 빠른 개발을 가능케 하는 패러다임의 변화를 경험했다. Spring 프레임워크의 핵심인 의존성 주입(DI)과 관점 지향 프로그래밍(AOP) 기법은 응용 프로그램 개발의 새로운 표준으로 떠올랐다. 그럼에도 불구하고, Spring 프레임워크의 계속된 발전은 설정의 복잡성을 높였으며, 배포 측면에서는 크게 달라진 것이 없다. 특히, 응용 프로그램의 복잡성과 대화형 개발 및 배포 방식에 대한 근본적인 변화가 요구되고 있다. 이러한 문제를 해결하기 위해 마이크로서비스 아키텍처(MSA)가 도입되었다. 이 아키텍처는 독립적으로 작동하는 컴포넌트들로 대규모 시스템을 구..
wn1331
'Spring Boot' 태그의 글 목록 (2 Page)