~/talk

Scaling Shopify's Multi-Tenant Architecture across Multiple Datacenters

Talkat SREcon16 Europe · 2016-07-11..07-13· [databases, networking]
slides:none on file

Shopify moves from a single big MySQL to per-shop database sharding, splitting ~275,000 merchants so each shop’s rows live in one primary with cross-datacenter replicas, cutting DB pressure and surviving 1M RPM flash-sale patterns. A custom Sorting Hat (OpenResty Lua) in nginx routes domains to “parts,” enabling BGP anycast + ECMP at the edge and a direct fiber tunnel for bgp propagation delays. Automated failover script reduces outages to ~5 minutes with storefront browseable and checkout paused for ~2 minutes; floating capacity handles hotspots.

AI-written summary · about

  1. 0:00Intro
  2. 0:30About Shopify
  3. 9:15The Spectrum
  4. 9:49Conventional Rails
  5. 10:34Partitioning
  6. 12:20Why do we want to do this
  7. 12:57How this looks
  8. 13:50How failure was used
  9. 14:21The advantage of one script
  10. 15:29Stateless servers
  11. 17:07Parting
  12. 18:50Sorting Hat
  13. 20:34Isolation vs Utilization
  14. 21:51Floating Capacity
  15. 22:29Next Chapter
  16. 22:56Datacenter Failure
  17. 25:51Multiple Load Balancers
  18. 32:04Summary
  19. 33:12EngineX
  20. 34:17Conclusion
~/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.