The simple and practical approach to performance monitoring used at Touristly.
Sponsored by Touristly and presented at Ruby Tuesdays, 7 Nov 2017, Kuala Lumpur.
2. 6 months ago
• After a past Ruby Tuesdays
meet up
• Same train ride home with
Liang Zheng Gooi from OnApp
• Talked about performance
monitoring and Gooi asked
me to speak about what we
use at Touristly
• So here I am. Hope you find it
useful.
4. “To measure is to know. You can’t
improve what you don’t measure”
Lord Kelvin
5. Performance issues
accumulate over time
• Uncompressed images
• Too many API queries in 1
page
• N+1 queries
• Not caching things that should
be cached
• Network latency
• Technical debt
6. Distractions
• A lot of irrelevant advice out there
• “Use GraphQL”
• “Use NoSQL”
• “That image is too big.”
• “No animated GIFs”
• “Ruby can’t scale.”
7. Nobody uses Ruby for
speed
• Easy and nice to use
• Proven
• Ecosystem
• Conventions
• Usually not the problem
8. Don’t optimise randomly
• 80:20 rule
• Think about the user
• Page load time + perceived page load time
• Set goals
• Know your targets—how many users, sessions, open
rate, CTR, conversions, etc
13. Big improvements require
teamwork
• DevOps
• Single point of reference
• Easy to inspect together
• One-person CLI tools for measuring development make it
difficult for others
25. Thank you
• Touristly
• Kevin Francis for proofreading
• Ruby Tuesdays
• Liang Zheng Gooi
• LRT photo: Yosri042005PuteraLRT.jpg by Yosri,
Wikimedia Commons