Enterprise Patterns: Concurrency in Business Applications

Enterprise Patterns: Concurrency in Business Applications

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 2h 54m | 662 MB

When multiple users are editing the same data, concurrency effects can result in lost work or errors. This course teaches you how to prevent concurrency errors at database level, and for business transactions that span multiple pages and postbacks.

When developing applications where multiple users can edit the same data, concurrency effects can result in work being overwritten and inconsistent data being read, which can cost a business time, money, and frustration. In this course, Enterprise Patterns: Concurrency in Business Applications, you’ll learn how to recognize and prevent these types of errors. First, you’ll explore how to use isolation levels within database transactions. Next, you’ll discover how to implement optimistic and pessimistic concurrency in code for long-running business transactions. Finally, you’ll learn how to design a locking framework for your application. When you’re finished with this course, you’ll have a foundational knowledge of concurrency patterns that will help you as you move forward to design more robust, enterprise applications. Software required: Microsoft Visual Studio.

Table of Contents

01 – Course Overview
02 – Introduction
03 – Properties of Transactions
04 – Optimistic and Pessimistic Concurrency Control
05 – Concurrency Issues in App Development
06 – Database Isolation Levels
07 – SQL Server Isolation Levels
08 – Understanding Database Deadlocks
09 – Deadlock Examples with Entity Framework Core
10 – Preventing Deadlocks with Table Hints
11 – Recovering from Deadlocks with Retries
12 – Module Summary
13 – Introduction
14 – Understanding the Optimistic Offline Lock Pattern
15 – Optimistic Concurrency with Entity Framework Core
16 – Overview of Demo Project
17 – Implementing Optimistic Offline Lock
18 – Managing State of Disconnected Entities
19 – Concurrency Conflicts When Deleting an Entity
20 – Module Summary
21 – Introduction
22 – Understanding the Pessimistic Offline Lock Pattern
23 – Building the Lock Manager and Editing Entities
24 – Releasing Expired Locks
25 – Deleting Entities with Pessimistic Offline Lock
26 – Module Summary
27 – Introduction
28 – Understanding the Coarse-grained Lock Pattern
29 – Creating a Business Transaction in ASP.NET Core
30 – Using a Business Transaction in Controllers and Views
31 – Disconnected Trackable Business Entities in EF Core
32 – Implementing the Course-grained Lock Pattern
33 – Module Summary
34 – Introduction
35 – Understanding the Implicit Lock Pattern
36 – Implementing a Generic Repository
37 – Refactoring Get to Include Lock Information
38 – Refactoring Save to Ensure Lock Information
39 – Module Summary