SideProject

· SideProject
들어가며지난 6월 부터 8월 10일까지 스위그 5기 백엔드 개발자로 참여해 FADE 프로젝트를 출시했다.주제 선정 기간 "매일 매일 패션왕을 뽑는 서비스가 있으면 어떨까?" 라는 내 의견으로부터 시작됐고 추가적인 피처를 구상하며 발전된 서비스이다. 다른 주제에 대한 의견도 많았는데, 심지어는 나조차 내 주제를 선택하는게 유치해 다른 주제를 선택했는데 출시 후 오늘 기준 유저가 50명까지 늘어났다니 이렇게 뿌듯하지 않을 수 없었다. 제일 마지막에 팀에 합류했고 부족한 점도 많았지만 6주 동안 함께 고생해주신 팀원 분들께 감사드립니다. FADE: 투표로 만들어가는 패션 트렌드당신의 패션 감각이 트렌드를 만듭니다! 매일매일 새로운 스타일에 투표하고, 가장 사랑받은 룩이 오늘의 페이피(FA:P)로 빛나요. 투표..
· SideProject
신발 입찰 거래 프로젝트를 진행하면서 알림 기능을 구현해야 했다.기능을 적용해야 할 부분은 다음과 같다. 1. 즉시 판매의 경우 구매 입찰을 등록한 구매자에게 결제 알림이 전송되어야 한다. 구매자 1에게 알림을 전송하는 방법은 여러가지가 있는데 Sse를 사용해보기로 했다 위키백과에 SSE에 대한 설명이 나와있다.SSE ( 서버 전송 이벤트 )는 클라이언트가 HTTP 연결을 통해 서버로부터 자동 업데이트를 수신할 수 있도록 하는 서버 푸시 기술이며, 초기 클라이언트 연결이 설정된 후 서버가 클라이언트를 향한 데이터 전송을 시작하는 방법을 설명합니다. 이는 일반적으로 브라우저 클라이언트에 메시지 업데이트 또는 지속적인 데이터 스트림을 보내는 데 사용되며 클라이언트가 이벤트 스트림을 수신하기 위해 특정 URL..
· SideProject
( 이전 글과 이어지는 포스트입니다. ) 구매 서비스에서 재고 동시성 이슈 해결해보기(2) - Redisson '분산락'은 다중 서버 + 분산 DB 환경에서 동시성을 제어하기 위해 사용하는 Lock 기법입니다. 대표적으로 Mysql User Lock, Redis Lettuce, Redis Redisson이 있습니다. 반드시 Redisson을 사용할 필요는 없지만, devsting.tistory.com 이전 시간까지 멀티 쓰레드, 멀티 서버 환경을 고려하여 동시성 문제 해결하기 위해 JPA의 @Lock을 사용해서 해결했고, Redisson 또한 적용해봤습니다. 그럼 이제 수행해야할 과제는 무엇인가.. 당연 서버의 성능, 내가 만든 API의 성능을 측정하는 것이였습니다. 저는 다양한 방법 중 Redis Ca..
· SideProject
( 이전글과 이어지는 포스트입니다. ) 구매 서비스에서 재고 동시성 이슈 해결해보기(1) - JPA LOCK 4주 간 예약 구매 사이드 프로젝트를 진행했습니다. `예약 구매` 서비스는 특정 기념일이나 타임세일과 같이 해당 기간 또는 시간에만 상품을 사용자들에게 노출하고, 판매하는 이미 많은 브랜 devsting.tistory.com '분산락'은 다중 서버 + 분산 DB 환경에서 동시성을 제어하기 위해 사용하는 Lock 기법입니다. 대표적으로 Mysql User Lock, Redis Lettuce, Redis Redisson이 있습니다. 반드시 Redisson을 사용할 필요는 없지만, 기본적으로 디스크를 사용하는 데이터베이스보다 메모리를 사용하는 Redis가 더 빠르게 락을 획득 및 해제할 수 있다는 점,..
· SideProject
4주 간 예약 구매 사이드 프로젝트를 진행했습니다. `예약 구매` 서비스는 특정 기념일이나 타임세일과 같이 해당 기간 또는 시간에만 상품을 사용자들에게 노출하고, 판매하는 이미 많은 브랜드에서 마케팅 전략으로 사용되고 있는 서비스입니다. E-COMMERCE 관련 백엔드 API 개발을 진행하면서 처음으로 멀티 쓰레드 환경에서 테스트를 경험해보았고, 재고 관리 기능을 구현하면서 Race-Condition 문제를 접했습니다. 예약 구매 비지니스 로직의 대한 간단한 이해를 시작으로, 동시성 제어, 적용한 방법의 한계에 대한 내용까지 글을 작성해보려고 합니다. 개발 방법 예약 구매 비즈니스 로직에 대한 간단한 이해 유저가 주문서비스의 주문 API를 호출하면 먼저 유저의 정보와 상품 번호 구입 수량 정보가 주문 내..
배준오
'SideProject' 카테고리의 글 목록