강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

在庫システムで調べる同時性問題の解決方法

並行性問題とは何かを調べ、処理する方法を学びます。

  • 169developer9973
3시간 만에 완강할 수 있는 강의 ⏰
concurrent
Spring
Java

学習した受講者のレビュー

こんなことが学べます

  • 並行性の問題が何であるかがわかります。

  • 並行性問題を処理する方法を学びます。

同時性の問題処理も自信を持って!
簡単な在庫システムで冷静に学びましょう。

バックエンド開発者ラーメン
必ず知っておくべき同時性問題🚩

同時性問題を知っていますか?バックエンド開発者であれば、並行性を考慮したプログラミングを行うことを知っておく必要があります。プロジェクトの開始時に並行性の問題を考慮せずに開発を開始すると、データの整合性が重要な状況でさまざまな問題が発生する可能性があります。

このレッスンでは、並行性の問題が何であり、どのように解決できるかを学びます。簡単な在庫システムを直接作成しながら、並行性の問題について学び、問題を解決する方法を学びます。 JavaとSpringを解放した初心者のバックエンド開発者の皆さんに役立つように今回の講義を制作することになりました。一緒に知ってみましょうか?

こんな方におすすめです💡

掲示板は作ってみたが、実務バックエンド開発にはどんなことを考慮すべきか知りたい方

在庫など、データ整合性が重要な機能をどのように開発するのか気になる人


3-Stepで解決する
在庫システムの整合性の問題!

DBと実際の商品在庫数が合わない。
どうすればいいですか?

並行性の問題 (Concurrency Issue)

トラブルシューティング#1
アプリケーションレベル

アプリケーションレベルで問題を解決します。

Synchronized キーワードの使用

トラブルシューティング#2
Database Lock

データベースが提供するロックを使用して並行性を制御します。

  • Pessimistic Lock (悲観的ロック)
  • Optimistic Lock (楽観的ロック)
  • Name Lock (ネームロック)

Pessimistic Lockを使う

トラブルシューティング#3
Redis Distributed Lock

Redis(レディス)の機能を活用して同時性を制御してみます。

  • ライブラリ比較
  • Redis Cliによる命令の実践
  • Lettuceを活用する
  • Redissonを活用する

Lettuce、Redissionを使う


Q&Aをチェックしてみてください💬

Q. さて、Java(Java)をすべて学びました。この講義を聞くことができますか?

この講義はSpringを使って掲示板を作ってみた方におすすめです。スプリングで掲示板を一度作ってみた後に聞くことをお勧めします。

Q. この講義を聞くと、同時性問題をすべて処理できるようになりますか?

状況ごとに処理する方法が異なるため、すべて処理できません。ただ、同時性の問題が何で、どのように解決するのかを学ぶので、状況に応じて応用する方法を養うことができると思います。

Q. Node.jsを使って開発していた現職者です。この講義を聞くことができますか?

スプリングに特化した機能をあまり使用していないので、Javaを理解できれば聞いても大丈夫です。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • 同時性問題が何であるかわからない人

  • 並行性の問題は何であるかを知っていますが、どのように解決すべきかわからない人

  • Springを使って掲示板を一度でも作ってみた方

前提知識、
必要でしょうか?

  • Java

  • Spring

  • Spring Data Jpa

こんにちは
です。

5,563

受講生

429

受講レビュー

295

回答

4.8

講座評価

3

講座

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

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

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

カリキュラム

全体

18件 ∙ (1時間 8分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

312件

4.8

312件の受講レビュー

  • kanior님의 프로필 이미지
    kanior

    受講レビュー 1

    平均評価 3.0

    3

    100% 受講後に作成

    First of all, the class itself was very helpful. However, the class itself was not very informative or had a lot of content, so I had to look up the technologies and terms used and study them while listening. Above all, the text was so small that I couldn't read it unless I viewed it in full screen, so I felt that it was lacking in the basic aspects of a development lecture. In conclusion, I think it was a bit of a waste to pay 20,000 won. I would have been satisfied if you had lowered the price to around 10,000 won or increased the content in more detail. Again, the class itself was very helpful. Thank you.

    • 169developer9973
      知識共有者

      Thank you so much for the detailed review, Kim. I reflected your feedback and increased the font size before re-uploading.

  • sunjune18284435님의 프로필 이미지
    sunjune18284435

    受講レビュー 27

    平均評価 4.7

    5

    100% 受講後に作成

    This is an hour long, but it's really informative because you get to touch Docker and try out all the different functions... and the feedback is also good... Who are you...?

    • 169developer9973
      知識共有者

      Seonjun Moon, thank you so much for your great review!

  • hzeen03012134님의 프로필 이미지
    hzeen03012134

    受講レビュー 7

    平均評価 5.0

    5

    28% 受講後に作成

    The entire lecture is about an hour long, but it is very well organized and informative!! It was difficult and tricky at first, so it was hard to understand, but I understood a lot after listening to this lecture. I only listened to synchronized, DB lock, and I haven't listened to Redis yet, but I'm looking forward to Redis!!ㅎㅎ Developers who are reading this review, listen because you only need to invest 1 hour!! Of course, the teacher explains for 1 hour, and what I do isn't 1 hour..ㅠㅠ However, I'm personally very satisfied with this lectureㅎㅎ Except for the small font, I liked that it explained the concurrency solution method in an easy and simple way~ Please make the next lecture short and bold, and make the font really big...^^

    • 169developer9973
      知識共有者

      hjin, thank you for the very long review! I also found this topic very difficult when I first encountered it, so I wanted to explain it as easily as possible. I am very proud that you understood a lot through my lecture. As for the writing... I will try to make it bigger from the next lecture.

  • kimty931230634님의 프로필 이미지
    kimty931230634

    受講レビュー 7

    平均評価 4.7

    5

    50% 受講後に作成

    It was a lecture that was like a cherry picker of the online lecture world, a lecture that was like a diet package that only contained the necessary things while removing the fat. It was a useful time to learn concurrency easily and quickly through simple examples. The text is a bit small.. ;ㅅ;

    • 169developer9973
      知識共有者

      Thank you, Taeyoung Kim, for the great review :) I wanted to give you as much helpful information as possible while keeping it brief! I will gradually increase the font size. Thank you for taking the class!

  • dongheekim359님의 프로필 이미지
    dongheekim359

    受講レビュー 50

    平均評価 5.0

    5

    50% 受講後に作成

    The lecture is really good. I hope other developers will listen to it. Please give me other good lectures that will be helpful in my work in the future. Stay healthy and happy~

    • 169developer9973
      知識共有者

      Thank you so much for the great review, Donghee Kim! I hope you stay healthy and happy, Donghee Kim!!

¥2,343

169developer9973の他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

同じ分野の他の講座を見てみましょう!