~/talk

Concurrency, Scalability and Transactions -- Myths and Surprises

Talkat The Conf 2019 · 2019-10-23..10-24· [databases, distributed-systems]
links:none on file
slides:none on file

Shows concrete failures from concurrent handlers that read then later update the same row (order paid vs order canceled), demonstrates Postgres behavior across isolation levels and explains why a simple BEGIN/COMMIT doesn't fix races. Covers read committed, repeatable read and serializable tradeoffs: serializable prevents anomalies but causes transaction aborts and retries; advises doing reads inside transactions, using SELECT FOR UPDATE when appropriate, rolling back external side effects, and monitoring DB locks and server clocks.

AI-written summary · about

  1. 0:00Introduction and speaker background
  2. 3:18Why concurrency matters today
  3. 7:56Complexity of large-scale systems
  4. 9:19Where concurrency appears in web apps
  5. 11:46Databases as complex concurrency engines
  6. 12:49What transactions really do
  7. 14:16Real-world transaction example
  8. 18:59Why simple transactions aren't enough
  9. 20:02Transaction isolation levels explained
  10. 21:29Dirty reads and their dangers
  11. 23:20Non-repeatable reads and phantom reads
  12. 26:59Serializable isolation and its costs
  13. 29:15Why databases don't default to serializable
  14. 30:40Serializable example and failure handling
  15. 32:04Performance impact of isolation levels
  16. 32:48Lock contention and side effects
  17. 34:12Retry storms and circuit breakers
  18. 34:58Monitoring and observability for databases
  19. 36:25Dormant issues in growing systems
  20. 37:48Data integrity as a core responsibility
  21. 38:52Coping with complexity in concurrency
  22. 40:21Closing and Q&A invitation
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.