~/talk

Surviving a Prime Time TV Commercial

Talkat Dutch PHP Conference 2013 · 2013-06-07..06-08· [php, web-performance]
links:none on file
slides:none on file

E-commerce front end built with Symfony2 serves pages under 100 ms behind Varnish and survives thousands of concurrent visitors by using Elasticsearch as primary datastore (products, prices, availability), three cheap ES nodes with MySQL replication via triggers into an append-only table polled every 60s, and automated deployment (Puppet, Capistrano, supervisorD). Traffic splits by protocol so HTTP hits fast front end and HTTPS goes to legacy checkout, cart state uses a marker cookie, assets live on S3/CloudFront, and staging mirrors production for realistic load tests.

AI-written summary · about

  1. 0:00Introduction
  2. 1:48The challenge
  3. 4:17TV ad traffic spike
  4. 6:44Scaling e-commerce sites
  5. 8:51Hybrid architecture
  6. 10:19Performance and reliability goals
  7. 13:31Architectural decisions
  8. 15:17Hosting and cloud
  9. 18:27Symfony and bundle inheritance
  10. 20:09Twig and template sharing
  11. 20:51Elasticsearch as database
  12. 22:16Hardware simplification
  13. 24:01MySQL to Elasticsearch replication
  14. 25:04SupervisorD for tasks
  15. 26:50Cache invalidation and Varnish
  16. 28:59Caching strategies and ESI
  17. 30:21Traffic segregation
  18. 31:48Shopping cart caching
  19. 33:14Automated staging and production
  20. 34:59Vagrant for development
  21. 36:23Failure testing in staging
  22. 37:05Profiling and performance
  23. 38:06Business automation lessons
  24. 38:48Logging and tracking
  25. 39:33Load testing with Siege
  26. 40:15Asset storage on S3
  27. 41:20Transactional emails
  28. 43:08Monitoring with New Relic
  29. 43:49Current performance
~/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.