Thumbnail
BEST
개발 · 프로그래밍 백엔드

재고시스템으로 알아보는 동시성이슈 해결방법 대시보드

(4.7)
209개의 수강평 ∙  2,636명의 수강생

19,800원

지식공유자: 최상용
총 18개 수업 (1시간 8분)
수강기한: 
무제한
수료증: 발급
난이도: 
입문
-
초급
-
중급이상
지식공유자 답변이 제공되는 강의입니다
폴더에 추가 공유

초급자를 위해 준비한
[백엔드, 웹 개발] 강의입니다.

동시성 이슈란 무엇인지 알아보고 처리하는 방법들을 학습합니다.

✍️
이런 걸
배워요!
동시성 이슈가 무엇인지 알 수 있게 됩니다.
동시성 이슈를 처리하는 방법들을 알게 됩니다.

동시성 이슈 처리도 자신있게! 
간단한 재고 시스템으로 차근차근 배워보세요.

백엔드 개발자라면 
꼭 알아야 할 동시성 이슈 🚩

동시성 이슈를 아시나요? 백엔드 개발자라면 동시성을 고려한 프로그래밍을 반드시 할 줄 알아야 합니다. 막 프로젝트를 시작할 때 동시성 이슈를 고려하지 않은 채로 개발을 시작하게 되면 데이터 정합성이 중요한 상황에서 여러 가지 문제가 발생할 수 있기 때문입니다.

이 강의에서는 동시성 이슈가 무엇이고, 어떤 방식으로 해결할 수 있는지를 알아봅니다. 간단한 재고 시스템을 직접 만들어보면서 동시성 이슈에 대해 알아보고, 문제를 해결하는 방법에 대해 알아봅니다. 자바(Java)와 스프링(Spring)을 막 뗀 초보 백엔드 개발자 여러분께 도움이 되고자 이번 강의를 제작하게 되었습니다. 함께 알아가볼까요?

이런 분들께 추천합니다 💡

게시판은 만들어보았지만, 실무 백엔드 개발에는 어떤 걸 고려해야 하는지 알고 싶은 분 

재고와 같이 데이터 정합성이 중요한 기능을 어떻게 개발해야 하는지 궁금한 분


3-Step으로 해결하는 
재고 시스템 정합성 문제!

DB랑 실제 상품 재고 숫자가 안 맞아요. 
어떻게 하면 좋을까요?

동시성 문제(Concurrency Issue)

문제 해결 #1
Application Level

Application 레벨에서 문제를 해결합니다.

Synchronized 키워드 사용

문제 해결 #2
Database Lock

데이터베이스가 제공하는 Lock을 이용하여 동시성을 제어해 봅니다. 

  • Pessimistic Lock (비관적 락)
  • Optimistic Lock (낙관적 락)
  • Name Lock (네임 락)

Pessimistic Lock 사용

문제 해결 #3
Redis Distributed Lock

Redis(레디스)의 기능을 활용해 동시성을 제어해 봅니다.

  • 라이브러리 비교
  • Redis Cli를 통한 명령어 실습
  • Lettuce 활용하기
  • Redisson 활용하기

Lettuce, Redission 사용


Q&A를 확인해보세요 💬

Q. 이제 자바(Java)를 다 배웠습니다. 이 강의를 들어도 될까요?

이 강의는 스프링(Spring)을 이용하여 게시판을 만들어보신 분들에게 권장합니다. 스프링으로 게시판을 한 번 만들어보신 후에 들으시는 걸 권장합니다.

Q. 이 강의를 들으면 동시성 이슈를 전부 처리할 수 있게 되나요?

상황마다 처리하는 방법이 다르기 때문에 전부 처리할 수 있지는 않습니다. 다만 동시성 이슈가 무엇이고, 어떤 식으로 해결하는지를 배우기 때문에 상황에 따라 응용하는 방법을 기르실 수 있다고 생각합니다.

Q. Node.js를 사용하여 개발하던 현직자입니다. 이 강의를 들어도 될까요?

스프링에 특화된 기능을 많이 사용하지 않기 때문에 자바를 이해하실 수 있다면 들으셔도 괜찮습니다.

이런 분들께 추천드려요!

🎓
학습 대상은
누구일까요?
동시성 이슈가 무엇인지 잘 모르시는 분
동시성 이슈는 무엇인지 알지만 어떻게 해결해야 하는지 모르시는 분
Spring을 이용하여 게시판을 한 번이라도 만들어보신 분
📚
선수 지식,
필요할까요?
Java
Spring
Spring Data Jpa

안녕하세요
최상용 입니다.
최상용의 썸네일

안녕하세요. 지식공유자 최상용입니다.

많은 오픈소스에 기여한 경험이 있는 현직 백엔드 개발자입니다.

- Spring Data Mongo Contributor
- querydsl Contributor
- grpc-kotlin Contributor
- ksp Contributor
- mybatis Contributor

커리큘럼 총 18 개 ˙ 1시간 8분의 수업
이 강의는 영상, 수업 노트가 제공됩니다. 미리보기를 통해 콘텐츠를 확인해보세요.
섹션 0. 강의소개 및 환경세팅
섹션 1. 재고시스템 만들어보기
섹션 2. Synchronized 이용해보기
Synchronized 이용해보기 02:52
문제점 01:32
섹션 3. Database 이용해보기
다양한 방법 알아보기 03:46
Pessimistic Lock 활용해보기 04:01
Optimistic Lock 활용해보기 06:22
Named Lock 활용해보기 06:46
섹션 4. Redis 이용해보기
Redis 라이브러리 알아보기 03:03
작업환경 세팅 01:36
Lettuce를 작성하여 재고감소 로직 작성하기 06:25
Redisson 을 활용하여 재고로직 작성하기 06:23
라이브러리 장단점 01:35
섹션 5. 마무리
Mysql 과 Redis 비교하기 01:26
강의 게시일 : 2022년 08월 08일 (마지막 업데이트일 : 2023년 07월 30일)
수강평 총 209개
수강생분들이 직접 작성하신 수강평입니다.
4.7
209개의 수강평
5점
4점
3점
2점
1점
VIEW 추천 순 최신 순 높은 평점 순 낮은 평점 순 평점 순 높은 평점 순 낮은 평점 순
hjin thumbnail
5
전체 강의 한시간 남짓한 시간인데 굉장히 알차게 잘 정리되어있습니다!! 처음 접하면 어렵고 까다로운 주제라서 이해하기 힘들었는데 이 강의 듣고 많이 이해했습니다. synchronized, DB lock 까지만 듣고 아직 레디스 부분은 안들었지만 레디스도 기대중!!ㅎㅎ 이 후기 보시는 개발자분들 1시간만 투자하면 되니까 들어보세요!! 물론 선생님이 1시간 설명이고 제가 하는건 1시간이 아니긴 합니다..ㅠㅠ 그렇지만 이 강의 개인적으로 대만족입니다ㅎㅎ 글씨가 작았던거 빼곤 동시성 해결방법에 대해 쉽고 간단하게 설명해주셔서 좋았어요~ 다음 강의도 짧고 굵게, 글씨는 엄청 크게 부탁드립니다...^^
2022-09-06
지식공유자 최상용
hjin 님 굉장히 긴 후기 감사합니다! 저도 처음 접할때 굉장히 어려웠던 주제였어서 최대한 쉽게 설명드리고 싶었습니다. 제 강의를 통해서 많이 이해하셨다니 굉장히 뿌듯합니다. 글씨는... 다음강의부터는 키워보겠습니다.
2022-09-09
김태영 thumbnail
5
인강계의 체리피커같은 강의, 군살은 쏙 빼고 필요한 것만 담은 다이어트 패키지 같은 강의였습니다. 동시성을 간단한 예제를 통해 쉽고 빠르게 익힐 수 있는 유익한 시간이었습니다. 글씨는 좀 작아요.. ;ㅅ;
2022-08-24
지식공유자 최상용
김태영님 너무 좋은 후기 감사합니다 :) 최대한 간략하되 도움되는 정보를 드리고 싶었습니다! 글씨는 차차 조금씩 키워보도록 하겠습니다. 강의를 수강해주셔서 감사합니다!
2022-08-24
김의 thumbnail
3
일단 수업 자체는 많은 도움이 됐습니다. 그러나 수업 자체가 설명이 친절하거나 수업 내용이 많은 것이 아니라, 사용하신 기술들이나 용어들을 제가 따로 찾아보면서 공부를 해가면서 들어야 하는 수업이었습니다.. 무엇보다도 글씨가 진짜 무지하게 작아서 전체화면으로 보지 않으면 글씨를 볼 수가 없어서 개발 강의로써 기본적인 부분이 미흡했다는 생각이 드네요.. 결론은 2만원 내고 보기엔 좀 아깝지 않나 하는 생각이 듭니다. 가격을 1만원 정도로 낮추시거나, 아니면 내용을 더 상세하게 늘렸다면 만족했을것 같습니다. 다시 말하지만 수업 자체는 큰 도움이 됐습니다. 감사합니다.
2023-04-20
지식공유자 최상용
김의님 자세한 후기 정말 감사드립니다. 피드백을 반영하여 글자 크기를 키운 후에 재 업로드를 하였습니다.
2024-01-02
김동희 thumbnail
5
강의 너무 좋습니다. 다른 개발자분들 꼭 들었으면 좋겠네요 앞으로 실무에 도움되는 깊이 있는 다른 좋은 강의 부탁드립니다 건강 하고 행복하세요~
2022-09-06
지식공유자 최상용
김동희님 너무 좋은 후기감사합니다! 김동희님도 건강하고 행복하세요!!
2022-09-06
seonjun Moon thumbnail
5
이게 한시간 짜리이지만 도커도 만져보고, 여러가지 기능들을 전부 다 실행해보고 하니 진짜 엄청 알차네요... 또 피드백도 잘 되어있고... 당신 정체가 무엇이죠...?
2022-11-20
지식공유자 최상용
seonjun Moon 님 너무 좋은후기 감사드립니다!
2022-11-26