yeseul.log
close
프로필 배경
프로필 로고

yeseul.log

  • 분류 전체보기 (76)
    • 프로젝트 (23)
      • 프로젝트 과정 (21)
      • 프로젝트 결과 (2)
    • 알아두면 좋은 개발 지식 (37)
      • 컨퍼런스 정리 (7)
      • Java & Spring (9)
      • Spring Batch 스터디 (18)
      • 인프라 (1)
    • 기타 (13)
      • 오늘 읽은 책 (5)
      • CloudWave 3기 (3)
      • 자격증 (2)
      • 컨퍼런스 (1)
      • 회고 (1)
  • 홈
  • GitHub
  • 방명록
선착순 쿠폰 발급 시스템 구현하기: Redis와 Kafka를 활용한 설계

선착순 쿠폰 발급 시스템 구현하기: Redis와 Kafka를 활용한 설계

선착순 쿠폰 발급 시스템을 구현하는 방법에 대해 궁금하여 공부하며 기록 해보았습니다.1. 요구사항 정의이벤트를 진행하며, 선착순 100명에게만 할인 쿠폰을 지급하고자 합니다. 시스템은 아래의 조건을 만족해야 합니다.선착순 100명에게만 지급되어야 한다.많은 유저가 동시에 쿠폰을 요청할 때 트래픽을 버틸 수 있어야 한다.쿠폰 발급 시 데이터 정합성을 유지해야 한다.이러한 요구사항을 충족하기 위해 트랜잭션 관리, 동시성 처리, 비동기 시스템 구성 등 다양한 기술적 요소를 고려해야 합니다. 동시에 쿠폰 발급이 이루어질 때, DB에 과부하를 주지 않고 처리할 수 있는 방법도 필요합니다.2. 문제 해결 방안(1) Redis를 활용한 문제 해결Redis는 싱글 스레드 기반으로 동작하며, 내부적으로는 여러 가지 고유..

  • format_list_bulleted 알아두면 좋은 개발 지식/Java & Spring
  • · 2024. 9. 26.
  • textsms

Spring에서 동시성 이슈 해결 방법(MySQL, Redis 이용하기)

애플리케이션에서 여러 사용자가 동시에 같은 데이터를 수정하려 할 때, 동시성 문제(Race Condition)가 발생할 수 있습니다. 이런 문제를 해결하기 위한 방법으로 여러 접근 방식이 있습니다. 이번 글에서는 Spring에서 동시성 문제를 해결하기 위한 몇 가지 대표적인 방법을 살펴보겠습니다. 1. synchronized 키워드를 이용한 해결Java에서 가장 기본적인 동시성 처리 방법 중 하나는 synchronized 키워드를 사용하는 것입니다. 이를 통해 하나의 프로세스 내에서 동시에 여러 스레드가 동일한 리소스에 접근하지 못하도록 제어할 수 있습니다. 아래는 synchronized를 사용한 예시입니다.public synchronized void decreaseQuantity(Long id, Lon..

  • format_list_bulleted 알아두면 좋은 개발 지식/Java & Spring
  • · 2024. 9. 25.
  • textsms
AWS Solutions Architect - Associate(SAA-C03) 취득 후기

AWS Solutions Architect - Associate(SAA-C03) 취득 후기

Cloud Wave 프로그램을 수료하면 9월 내에 자격증 시험을 칠 경우 10만 원 이내의 비용을 지원해주는 조건이 있었습니다. 여러 자격증 중에서 SAP나 CKA도 선택할 수 있었지만, 빠듯한 일정 때문에 비교적 준비 시간이 짧고 저렴하게 준비할 수 있는 SAA-C03을 선택했습니다. 때마침 AWS 자격증 챌린지 기간이라 50% 할인 쿠폰을 사용할 수 있었기 때문에 약 10만원 정도의 비용이 나와서 무료의 비용으로 시험을 치를 수 있었습니다. (수수료는 별도로 약 2천 원 정도 들었습니다.)공부 과정준비할 시간이 정말 부족했습니다. 시험 전주까지 기업 과제 전형도 마무리해야 했고, 동아리 정모까지 겹쳐 강의를 들을 여유가 없었습니다.그래서 선택한 방법은 덤프 회독이었습니다. 덤프는 약 1,000문제가 ..

  • format_list_bulleted 기타/자격증
  • · 2024. 9. 25.
  • textsms

GlobalExceptionHandler와 ExceptionHandlingFilter의 차이점

보호되어 있는 글입니다.

  • format_list_bulleted 프로젝트/프로젝트 과정
  • · 2024. 9. 19.
[Spring] Spring Security '인증' 과정

[Spring] Spring Security '인증' 과정

로그인 기능을 구현하다보니 Spring Security의 인증 과정에 대해 공부해야 했고, 그 중 아이디와 패스워드를 사용한 인증은 어떤 식으로 이뤄지는가에 대해 정리해 보았습니다.스프링 시큐리티가 제공하는 필터들WebAsyncManagerIntergrationFilterSecurityContextPersistenceFilterHeaderWriterFilterCsrfFilterLogoutFilterUsernamePasswordAuthenticationFilterDefaultLoginPageGeneratingFilterDefaultLogoutPageGeneratingFilterBasicAuthenticationFilterRequestCacheAwareFilterSecurityContextHolderAwar..

  • format_list_bulleted 알아두면 좋은 개발 지식/Java & Spring
  • · 2024. 9. 13.
  • textsms

[Spring] 커스텀 어노테이션을 만들어서 유효성 검증 쉽게 하기

Java에서 커스텀 유효성 검증 어노테이션 만들기일반적으로 @Email, @Pattern, @NotBlank 등의 표준 유효성 검증 어노테이션을 사용하지만, 프로젝트 내부에서 DTO를 만들어줄 때 전부 동일한 유효성 검사를 반복해서 하다보니 한 군데서 모아서 관리할 수 없을까 하다가 찾아보게 되었습니다. 1. 커스텀 유효성 검증 어노테이션 만들기먼저, @ValidEmail과 @ValidPassword라는 커스텀 어노테이션을 만들어 보겠습니다. 이 어노테이션을 사용하면 이메일 형식과 비밀번호 규칙을 한 번에 검증할 수 있습니다.UserDTO 클래스:public class UserDTO { @Documented @Constraint(validatedBy = {UserValidator.EmailVa..

  • format_list_bulleted 카테고리 없음
  • · 2024. 9. 13.
  • textsms
  • navigate_before
  • 1
  • ···
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (76)
    • 프로젝트 (23)
      • 프로젝트 과정 (21)
      • 프로젝트 결과 (2)
    • 알아두면 좋은 개발 지식 (37)
      • 컨퍼런스 정리 (7)
      • Java & Spring (9)
      • Spring Batch 스터디 (18)
      • 인프라 (1)
    • 기타 (13)
      • 오늘 읽은 책 (5)
      • CloudWave 3기 (3)
      • 자격증 (2)
      • 컨퍼런스 (1)
      • 회고 (1)
최근 글
인기 글
최근 댓글
태그
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바