μ½˜μ„œνŠΈ μ˜ˆμ•½ μ„œλΉ„μŠ€μ—μ„œ Lock μ„±λŠ₯ 비ꡐ해보기 (feat. 낙관적 락, 비관적 락, λΆ„μ‚° 락)
Β·
πŸ’» 개발/🎸 ETC
λ“€μ–΄κ°€λ©°μ½˜μ„œνŠΈ μ˜ˆμ•½ μ„œλΉ„μŠ€μ™€ 같은 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œλŠ” λ™μ‹œμ„± 처리λ₯Ό κ³ λ €ν•΄μ•Ό ν•©λ‹ˆλ‹€. μ’Œμ„ 예맀 μ˜€ν”ˆ μ‹œ μ—¬λŸ¬ μ‚¬μš©μžκ°€ λ™μ‹œμ— μ˜ˆμ•½μ„ μ‹œλ„ν•˜λ©΄, μžμ›μ΄ μ•ˆμ „ν•˜κ²Œ κ΄€λ¦¬λ˜μ§€ μ•Šμ„ 경우 μ˜ˆμ•½μ΄ μ΄ˆκ³Όλ˜κ±°λ‚˜ 데이터 일관성이 깨질 μœ„ν—˜μ΄ μžˆμŠ΅λ‹ˆλ‹€. 이번 μ‹œκ°„μ— μ½”λ“œ 적용 및 ν…ŒμŠ€νŠΈλ₯Ό 톡해 각 λ™μ‹œμ„± 처리 λ°©μ‹μ˜ μž₯단점을 κ²€ν† ν•˜κ³ , μ΅œμ’…μ μœΌλ‘œ λΉ„μ¦ˆλ‹ˆμŠ€ λ‘œμ§μ— μ ν•©ν•œ λ™μ‹œμ„± 처리 방식을 μ„ μ •ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€.  λ™μ‹œμ„± μ΄μŠˆκ°€ λ°œμƒν•  수 μžˆλŠ” λΉ„μ¦ˆλ‹ˆμŠ€ 둜직이 μ„œλΉ„μŠ€μ—μ„œ λ™μ‹œμ„± μ΄μŠˆκ°€ λ°œμƒν•  수 μžˆλŠ” μ£Όμš” λ‘œμ§μ€ μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€.μ’Œμ„ μ˜ˆμ•½λ½μ„ κ±Έμ–΄μ•Ό ν•˜λŠ” μžμ›seatν…Œμ΄λΈ”μ˜ statusconcert_scheduleν…Œμ΄λΈ”μ˜ available_seats포인트 μΆ©μ „ 및 κ²°μ œλ½μ„ κ±Έμ–΄μ•Ό ν•˜λŠ” μžμ›userν…Œμ΄λΈ”μ˜ balancereserv..
TDD, λ™μ‹œμ„± 처리 - ν•­ν•΄ ν”ŒλŸ¬μŠ€ 회고 (1μ£Όμ°¨)
Β·
🏠 일상/πŸ““ 일상 일기
λ“€μ–΄κ°€λ©° λ“œλ””μ–΄ 1μ£Ό μ°¨κ°€ 끝났닀..! (이제 10퍼 ν–ˆλ‹€..) μ •λ§ μ§€λ‚œ ν•œ μ£ΌλŠ” λ‚΄ 머리둜 λ“€μ–΄μ˜€λŠ” 인풋 데이터가 μ–΄λ§ˆμ–΄λ§ˆν•œ μΌμ£ΌμΌμ΄μ—ˆλ‹€.μ§€λ‚œ ν† μš”μΌ, μ˜€ν”„λΌμΈ μ„Έμ…˜ λͺ¨μž„μ—μ„œ 10μ£Όλ™μ•ˆ ν•¨κ»˜ ν•  νŒ€μ›λ“€κ³Ό 첫 λŒ€λ©΄μ„ ν•˜κ³ , 1μ£Ό μ°¨ κ³Όμ œμ— λŒ€ν•œ 발제λ₯Ό λ“€μ—ˆλ‹€. κ·Έλƒ₯ μ•„μ΄μŠ€λΈŒλ ˆμ΄ν‚Ή ν•˜λ©° μ„œλ‘œ κΆκΈˆν•œ 것듀 μ–˜κΈ° λ‚˜λˆ„κ³ , μ½”μΉ˜λ‹˜μ—κ²Œ 과제λ₯Ό μ–΄λ–»κ²Œ ν’€μ–΄κ°ˆ 것 인가에 λŒ€ν•œ μ„€λͺ…λ§Œ λ“€μ—ˆμ„ 뿐인데 μ§€κΈˆ νšŒμ‚¬μ—μ„œλŠ” κ²½ν—˜ν•΄ 보지도, λŠκ»΄λ³΄μ§€λ„ λͺ»ν–ˆλ˜ λ‚΄μš©λ“€μ— μ μž–μ€ 좩격과 μ„€λ ˜κ³Ό κΈ΄μž₯이 λ’€μ„žμ—¬μžˆμ—ˆλ‹€.  λ‚˜λŠ” μ§€κΈˆ νšŒμ‚¬μ—μ„œ κ·Έλž˜λ„ λ‚˜μ˜μ§€ μ•Šμ€ μ„±κ³Όλ₯Ό λ‚΄κ³€ μžˆμ§€λ§Œ, μ§€λ‚œ 20λŒ€ μ‹œμ ˆ λ‹€λ₯Έ λΆ„μ•Όμ˜ 일을 ν•˜λ©΄μ„œ β€˜μš°λ¬Ό μ•ˆ κ°œκ΅¬λ¦¬β€™κ°€ 뭔지λ₯Ό ν•œλ²ˆ μŽ„κ²Œ λŠκ»΄λ³΄μ•˜κΈ° λ•Œλ¬Έμ—, μ΄λ²ˆμ—λ„ 그럴 κ²ƒμ΄λΌλŠ” κ±Έ κ°μ˜€ν•˜κ³  μ™”μ—ˆλ‹€.μ•„λ‹ˆλ‚˜ λ‹€λ₯ΌκΉŒ..