Applications are often required to keep an external API up-to-date with changes to application data, but getting the timing right can be tricky. How do you track all relevant changes without forcing app developers to remember this syncing logic? Can you observe all model changes without creating unneeded API calls? How do you reduce back pressure when, for example, a maintenance task changes every record in a database table?
SyncMachine is a mini-framework that aims to solve these orchestration problems, using Wisper and Sidekiq to observe model changes and kick off an optimized workflow to determine when to update external APIs.
Bio
Francis Hwang is the founder of NYC.rb and co-founder of Gotham Ruby Conference. These days he is an independent software consultant specializing in software architecture and organizational process.
Hi nyc.rb! Here's my talk proposal.
Abstract
Applications are often required to keep an external API up-to-date with changes to application data, but getting the timing right can be tricky. How do you track all relevant changes without forcing app developers to remember this syncing logic? Can you observe all model changes without creating unneeded API calls? How do you reduce back pressure when, for example, a maintenance task changes every record in a database table? SyncMachine is a mini-framework that aims to solve these orchestration problems, using Wisper and Sidekiq to observe model changes and kick off an optimized workflow to determine when to update external APIs.
Bio
Francis Hwang is the founder of NYC.rb and co-founder of Gotham Ruby Conference. These days he is an independent software consultant specializing in software architecture and organizational process.