~/talk

Keynote: Off the Rails

Talkat RedDotRuby 2015 · 2015-06-04..06-05· [ruby, web-performance]
links:none on file
slides:none on file

Discourse runs off-the-rails extensions: a production-tested message_bus gem that gives reliable ordered delivery, Redis-backed transport with long‑poll fallback and client catch‑up; Rack hijack enables many concurrent long polls without blocking. Memory and CPU profiling use Rack Mini Profiler and a Ruby memory profiler to find hotspots — pluck allocations drop from ~286/25KB to ~13/1.1KB with a PG type mapper and a fast pluck patch, LRU Redux is ~30% faster than alternatives, Dockerized deploy and source maps in production make large JS apps debuggable.

AI-written summary · about

  1. 0:00Start
  2. 2:41Omakase v2
  3. 5:37Omakase Demo
  4. 10:09gem install message_bus
  5. 11:41message_bus features
  6. 12:55Rack Hijack works on unicorn/puma/ passenger
  7. 16:06What about Action Cable?
  8. 16:59What about web sockets?
  9. 22:27Performance is a feature
  10. 23:14gem install memory_profiler
  11. 23:28memory_profiler crash course
  12. 23:58Allocation reports
  13. 24:31Discourse boot (allocated)
  14. 25:13Discourse boot strings (allocated)
  15. 26:14Retention reports
  16. 26:42Discourse boot (retained)
  17. 28:03Using memory profiler to optimise pluck
  18. 29:58PG type mapping, new in pg 0.18
  19. 34:54How fast is this?
  20. 36:04A story about Stack Overflow
  21. 37:27Active Record needs Dapper
  22. 39:46Lightweight jobs
  23. 41:08Source maps in production
  24. 41:41Anonymous Cache
  25. 42:47Optimizing for Development
  26. 43:37rake autospec
  27. 48:35Faster browser reloads in Development
  28. 50:23Choose your own adventure
~/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.