STM

1,025 views

Published on

STM, dev,clojure,

Published in: Business, Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,025
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
14
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

STM

  1. 1. STM@diego_pachecoSoftware Architect | Agile Coach
  2. 2. Moores law (Number os Transistors double ~2 years)
  3. 3. AMD Athlon 64 FX-53 CPU 2.4 GHz - Single CORE - 2005
  4. 4. Single Thread App: It’s ALL OVER !!!
  5. 5. More Than one CORE: Dual, Quad, etc..
  6. 6. Concurrent Threads == Challenges
  7. 7. Order of operations is not fixed…
  8. 8. Difficult to repeat failures…
  9. 9. WE often don’t think this way…
  10. 10. Testing effort is bigger…
  11. 11. Multithreaded: 2 General Categories JOB JOB Group P1 P3 J1 P2 J2 J3 P4 P5 J4 J5 JOB JOB Group DONE DONE
  12. 12. Current Models Locks Actors STM
  13. 13. Current Models - LOCKS Locks Shared-Memory OO Surreal
  14. 14. Current Models - Actors Actors NO Shared DataAsync Messages Lightweight Threads
  15. 15. Current Models - STM STM ACID
  16. 16. STM Implementations Guarantee NO: Dead Locks LivelockRace Conditions
  17. 17. STM Issues:Retry Waste: Lots of transactions retry Overhead: Transaction Bookkeeping Lack of Tools: Identify, learn, tunning, etc...
  18. 18. Clojure/Haskell: All Immutable Everything is immutable! Change: Always Inside a Transaction.
  19. 19. Clojure: Persistent Data Structures
  20. 20. Clojure STM ImplementationMulti-Version Concurrency Control (MVCC) + Snapshot isolation Databases (Mysql, Postgress & Oracle), Subversion, EhCache, JBoss Cache Clojure and several other solutions…
  21. 21. STMThank You!@diego_pachecoSoftware Architect | Agile Coach

×