Nate Berkopec (@nateberkopec) 's Twitter Profile
Nate Berkopec

@nateberkopec

🚀 I make Rails apps fast and scalable. 📖 Wrote a few books about that. 👷 Maintain Puma, the most popular Ruby webserver. 日本語: @nateberkopec_ja

ID: 18259813

linkhttps://speedshop.co calendar_today20-12-2008 03:07:27

18,18K Tweet

23,23K Followers

93 Following

Mike Coutermarsh (@mscccc) 's Twitter Profile Photo

“Automatic connection switching” The way most web apps solve this is by setting a short lived cookie (~5 seconds) after a write. On page refresh, presence of the cookie tells the app to query the primary.

Nate Berkopec (@nateberkopec) 's Twitter Profile Photo

**new Ruby profiler frontend alert**: Puma contributor Joshua Yang is working on a Vernier/prosopite mashup github.com/joshuay03/dial

Nate Berkopec (@nateberkopec) 's Twitter Profile Photo

another new profiler for Ruby: SDB. The underlying design is sort of similar to rbspy. it's aiming to have very low overhead. github.com/yfractal/sdb

Nate Berkopec (@nateberkopec) 's Twitter Profile Photo

Delivered this win by tag-teaming with Andrew Atkinson to help identify what indexes to add that would improve performance on this daily maintenance job. ~100 seconds of DB wait time removed. I've been bringing in a few people to help retainer clients on an ad-hoc basis

Delivered this win by tag-teaming with Andrew Atkinson to help identify what indexes to add that would improve performance on this daily maintenance job. ~100 seconds of DB wait time removed.

I've been bringing in a few people to help retainer clients on an ad-hoc basis
Nate Berkopec (@nateberkopec) 's Twitter Profile Photo

Incredibly common Rails perf anti-pattern: Rails.cache.fetch([complicated,cache,key], expires_in: random_interval) do dog_of_a_SQL_query end Cache hitrate: 10% (if anyone even knows what it is)

Nate Berkopec (@nateberkopec) 's Twitter Profile Photo

I hate all wireless tech. The performance and reliability just isn't there. My wireless mouse dips on update rate from ~120hz to ~5hz randomly. Lovely stuff. Very fun.

Nate Berkopec (@nateberkopec) 's Twitter Profile Photo

Show me a hash with 10+ dynamic keys in an ActiveRecord model and I will show you a performance trash fire. 99% of the time this is a hidden view template for something like Intercom/LaunchDarkly/auth that tries to send 95% of the database state to the 3rd party on every req