I have a Heroku app with a PostgreSQL DB. Now I want to have a seperate process, possibly on a different machine, to access the DB. The suggestion on the Herkou site is actually what I wanted to do myself:
No, connecting to your database from machines outside of Heroku is not supported.
We recommend that you encapsulate data access in an API to manipulate it.
But I’m not sure how that’s done best. I’d like to be able to send some JSON to the API and get back JSON as a result of that request. Like “give me all posts that are expired for a bunch of given userIds” or “update all users to be suspended if their posts contain any of the given words” in an example micropost app.
What’s the best way to achieve that? Can I write an extra ruby program that is accessible via TCP and accepts JSON input? Is that even possible with Heroku? Or do I have to integrate the API into my rails app somehow? How?
Thankful for any ideas,
Tom
You will have to integrate the API to your rails app, there are many solutions for this, one of them is using a tool specialized for API building like Grape and mount it with your Rails app. This way you could have your Rails app running and also the API, both sharing the same codebase.