MSSQL Server 2016ベースのデータベース入門から活用まで Part.3
usefulit
データベース構築からテーブル生成、各種SQLクエリ文を使用してデータベース内のデータを操作、変更できる講義です。
Intermediate
SQL, MSSQL, DBMS/RDBMS
代表的な並行性問題である競合状態(Race Condition)をテーマに学習します。 並行性問題を発生させる単一サーバー環境と分散環境を比較しながら実習します。 トランザクション境界と分離レベルを理解できます。 楽観的ロック、悲観的ロック、分散ロックの違いを学ぶことができます。
並行性問題の根本的な原因と解決方法
単一サーバー環境と分散サーバー環境で同時性問題を解決する方法
楽観的ロック、悲観的ロック、分散ロックを正しく理解して使用する
トランザクション境界と分離レベルの理解
IntelliJ IDEA、Docker、k6の活用方法
この講義で楽観的ロック、悲観的ロック、分散ロックなど同時性問題の概念と解決方法を正確に理解しましょう。
並行性問題を発生させる環境を作って、実際に並行性問題を体験します。
単一サーバー環境と分散サーバー環境での同時性問題の違いを確認してください。
正確に知らずに使用していた@Transactionalアノテーションの使用方法を理解することができます。
並行性の問題は一つなのに、なぜ解決方法は複数あるのでしょうか?理由を確認してみてください。
この講義を受講すべき方 (1)
並行性の問題、実はまだよく分からないんです。😅
この講義を受講すべき方 (2)
楽観的ロック、悲観的ロック、分散ロックの違いを正確に理解できていません。🌧️
この講義を受講すべき方(3)
並行性の問題はどのようにテストすべきでしょうか?📜
実務で最も多く発生する同時性問題である競合状態(Race Condition)について理解することができます。
よく分からずに使っていた@Transcationalアノテーションを正しく使用できるようになります。
単一サーバー環境と分散サーバー環境における同時性問題を理解し、正確に解決することができます。
トランザクション分離レベルと境界について理解し、実務に適用することができます。
並行性問題の根本的な理由をご存知ですか?
根本的な原因から理解して解決方法を学べば、より正確に問題を理解し解決することができます。
講義では並行性問題の概念から把握して始めます。
同時性の問題は、単一サーバー環境と分散サーバー環境で異なって発生します。同じ解決方法を適用しても、環境によって問題が解決されない場合があります。
どのような環境でどのように使用すべきかを知っていてこそ、実務にすぐに適用することができます。
2つのアプリケーションを同時に実行して分散環境を構成します。
(現)AhnLab バックエンド開発者
Q. 並行性の問題というテーマがとても難しく感じられます。🫥
並行性の問題が難しく感じられる理由は、概念が複雑だからではなく、実務で直接経験するまで感覚が掴めないからです。
講義では核心概念だけを厳選し、実習中心で説明します。
コードですぐに確認できるため、素早く理解していただけます。
Q. Spring BootやJPAについてまだよく分からない状態です。🤦♀️
Spring BootとJPAを深く知る必要はありません。
並行性の概念はフレームワークとは別に理解できます。
講義では必要な部分だけを最小限に説明し、すぐに実習に適用します。
実習で使用したプロジェクトコードもGitHubで提供しているので、すぐについてこられます。
Q. 並行性の問題は実務でよく発生するのでしょうか❓
はい、実際のサービスでは頻繁に発生します。
トラフィックが多かったり共有リソースへのアクセスがある構造では、ほぼ必然的に現れます。
特に在庫減少、決済、予約のような状態変更ロジックで頻繁です。
そのため初期設計段階から同時性制御戦略を考慮することが実務では推奨されます。
オペレーティングシステムおよびバージョン:Windows 11
使用ツール:IntelliJ IDEA Ultimate Edition、Docker、k6、Spring Boot、DBMS/RDBMS、Redis
Spring Boot、JPA、RDBMS
この講義は同時性問題を実習するために瞬間的に多くのリクエストを作る環境で実習していますが、大量のリクエストを問題なく処理する方法についての講義ではありません。
大量のリクエストを処理する方法と同時性問題を処理する方法は、互いに異なるトピックであることをお知らせします。
学習対象は
誰でしょう?
同時性の問題と解決方法に悩み続ける開発者
同時性問題に関連するトランザクションを理解したい開発者
楽観的ロック、悲観的ロック、分散ロックの違いを理解し適用したい開発者
前提知識、
必要でしょうか?
簡単なAPIバックエンドサーバー開発経験(Spring Boot)
データベース(RDBMS、NoSQL)に関する基礎知識
全体
25件 ∙ (3時間 54分)
期間限定セール
¥4,411
28%
¥6,176
同じ分野の他の講座を見てみましょう!