Josh Thompson     about     blog     projects

Move Slow and Improve Things: Performance Improvement in a Rails App #

Boulder Ruby Group Monthly Meetup @Recurly Offices, Feb 13, 2018

Slides are available here on Dropbox

Git Push, Git Paid #

Here’s the “Git Push, Git Paid” t-shirt I mentioned:

git push git paid

Thoughtbot designed these, and it looks like they’re still available for purchase on CottonBureau for $28.

Slow Query lookup: #

check to see what your current values are for long_query_time

SELECT
  start_time
  ,user_host
  ,query_time
  ,sql_text
  ,lock_time
  ,rows_sent
  ,rows_examined
  ,db
  ,last_insert_id
  ,insert_id
  ,server_id
  ,thread_id
FROM
  mysql.slow_log
WHERE
  start_time >= DATE_ADD(current_timestamp, INTERVAL -1 DAY)
  ORDER BY
    query_time DESC
LIMIT 10000;

What is Benchmarking and Profiling #

Profiling and benchmarking are flip sides of the same coin, profiling helps you to narrow down to where optimization would be most useful, benchmarking allows you to easily isolate optimizations and cross-compare them.

Additional reading #

I’ll be working on this Rails performance piece for a while, so if you’d like to see what else I’m learning, pop your email in below.

Full disclosure: sometimes I write about things other than Ruby on Rails.

Want to stay up to date on these projects? Enter your email below, and you'll get an approximately-monthly newsletter from me.

If you don't see the subscribe form above, click here.

Readers have rated these messages from me as variations of 'interesting-enough', 'thought-provoking', and 'worthwhile'. It's also easy to unsubscribe from.