Optimistic Concurrency vs Locks ูู SQL Server
๐⚡ Optimistic Concurrency vs Locks ูู SQL Server ูู
ุง ุงุชููู ูุนุฏّููุง ููุณ ุงูู Order ูู ููุณ ุงูููุช… ู
ูู ูููู
ููุณุจ؟ ๐ ุชุฎّูู ู
ุนุงูุง ุฅู ุนูุฏูุง ู
ุชุฌุฑ ุฅููุชุฑููู ุงุณู
ู SuperShop ๐ ูุนูุฏูุง Order ุจุงูุดูู ุฏู: Order #1001 Status: Pending Total: 1500 SAR ููู ููุณ ุงููุญุธุฉ ุญุตู ุงูุณููุงุฑูู ุฏู: ๐จ๐ผ ุฃุญู
ุฏ ู
ู ูุฑูู ุฎุฏู
ุฉ ุงูุนู
ูุงุก ูุชุญ ุงูู Order. ๐ฉ๐ผ ู
ูู ู
ู ูุฑูู ุงูุนู
ููุงุช ูุชุญุช ููุณ ุงูู Order. ุงูุงุชููู ุดุงูููู: Status = Pending ุฃุญู
ุฏ ูุงู: ุงูุนู
ูู ุฃูุฏ ุงูุทูุจ، ุฎูููู ุฃุนู
ูู Approved ✅ ููู ููุณ ุงูููุช ู
ูู ูุงูุช: ุงูุนู
ูู ุทูุจ ุฅูุบุงุก ุงูุทูุจ، ุฎูููู ุฃุนู
ูู Cancelled ❌ ุฃุญู
ุฏ ุถุบุท Save ุงูุฃูู. ุจูุช ุงูุฏุงุชุง: Status = Approved ุจุนุฏูุง ุจุซุงููุชูู ู
ูู ุถุบุทุช Save. ุจูุช ุงูุฏุงุชุง: Status = Cancelled ูููุง ุงูุณุคุงู ุงูุฎุทูุฑ ๐
: ุทุจ ุชุนุฏูู ุฃุญู
ุฏ ุฑุงุญ ููู؟ ๐คจ ุงุชู
ุณุญ. ู
ุด ุจุณ ุงุชู
ุณุญ… ุฏู ุงุชู
ุณุญ ู
ู ุบูุฑ ู
ุง ุฃุญู
ุฏ ุฃู ู
ูู ูุนุฑููุง ุฅู ุญุตู Conflict ุฃุตูุงً . ูุฏู ูุงุญุฏ ู
ู ุฃุดูุฑ ู
ุดุงูู ุงูู Concurrency ูุงุณู
ู: ๐ฅ Lost Update ูู
ู ููุง ุชุจุฏุฃ ุญูุงูุชูุง ู
ุน: SQL Server Locks ๐ Pessimistic Concurrency Optimistic Concurrency ⚡ rowversion EF Core Concurrency Tokens ...