~/talk

Building Available and Partition Tolerant...

Talkat ElixirConf 2016 · 2016-09-01..09-02· [distributed-systems]
speakerdeck:gabiz
slides:none on file

Claims a production media-router meets Available and Partition Tolerant requirements by using Phoenix Tracker (Phoenix.PubSub PG2) instead of Riak-Core. Shows a concrete implementation: a dispatch library and DHT with consistent hashing, N=2 replication, multi-call quorum ops, and live demos of network split, conflict resolution (simple “pick a value” merge by default) and handoff during autoscaling. Code is open source on VoiceLayer GitHub, low-latency goal is explicit, tradeoffs around versioning and membership flexibility are discussed.

AI-written summary · about

  1. 0:00Platinum
  2. 0:13Lanyard
  3. 0:33Outline
  4. 1:22Recurrent Airline System Failures
  5. 2:45The CAP Theorem
  6. 3:28CAP Triangle
  7. 4:18AP Systems
  8. 4:50Embracing Partition Tolerance
  9. 5:32Amazon Dynamo
  10. 7:03Techniques used by Dynamo
  11. 7:20Partitioning
  12. 9:04Replication
  13. 9:54Data Versioning
  14. 11:14Anti-Entropy
  15. 12:29Quorum
  16. 16:10Using Riak Core with Phoenix
  17. 16:31Issues
  18. 20:23High Level Architecture
  19. 21:06Media Cache Requirements
  20. 21:54Single-Node Media Cache
  21. 22:40Multi-Node Media Cache
  22. 23:06HA Media Cache
  23. 23:27Registry Hash-Ring
  24. 24:12Syncing Hash-Rings
  25. 24:51Phoenix Tracker
  26. 25:58Dispatch Library
  27. 26:38Dispatch Registry Not the be confused with the Media Cache registries
  28. 28:14Dispatch Service
  29. 29:23Distributed Hash Table
  30. 33:14Create Mix project
  31. 33:28Adding Dependency
  32. 33:55Config
  33. 34:20Application Start
  34. 34:33Dht Supervisor
  35. 35:31Initialization
  36. 36:19Setting a key/Value
  37. 37:02Getting Values
~/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.