title: Which ActiveRecord callbacks do I use to ensure I'm capturing all inserts, updates, and deletes?
body: <p>I have a Rails 2.3.12 application that needs to update a Rails 3.2.8 application. Their databases live on the same machine.</p>
  
  <p>There is not much time left for the 2.3.12 application, so rather than go with a big robust messaging solution I am opting for something more lightweight to do the updates. The 2.3.12 application is a product catalog, and I need to update only those products that have had some change associated with them or their subordinate has_many models.</p>
  
  <p>I thought the best way to do this was to attach a bit of code to the <code>after_save</code> and <code>before_destroy</code> callback hooks. I'll have a third table that will keep track of the associated product ids, then a background process on the 3.2.8 app will just constantly loop through that table looking for updates.</p>
  
  <p>Am I covering enough ground with those two callbacks, or is there something else I need to catch to handle all inserts, updates, and deletes to specific models?</p>
  
  <p>Also, if there's a better approach I would love to hear it. I thought about using an observer, but I don't know if those are available in 2.3.12.</p>