I want to investigate using Heroku for off-platform data processing, but I don't understand the architecture to deploy this to customers.
The process I want to investigate will pull about a million records out of Salesforce, process them, create a million records of another object type, and insert them back into Salesforce. Lets say I achieve that, and have an app written in some language, and I want to include this new feature in a new version of my Managed Package. What does this look like?
Do I have one central 'App' running on Heroku that each customer using my managed package connects to? If so, is that a data-isolation problem?
Does each customer need either own dyno, running my app? If so, who pays for it, and how do I ensure that exists when my code runs in either org on Salesforce?
Is there some more sensible, yet unforeseen option that I haven't reckoned?