Instead of making ActiveRecord calls to change a counter field, write them to capacitor. They'll get summarized in a redis hash, with a separate process batch-retrieving and writing to ActiveRecord. Being single-threaded, the writing process avoids row lock collisions, and absorbs traffic spikes by coalescing changes to the same row into one DB write.

Required Ruby Version

None

Authors

Jesse Montrose

Versions

  1. 1.0.0 September 30, 2013 (11.5 KB)

SHA 256 checksum