Heroku is a platform that enables developers to “build, run, and operate applications.” The way Heroku hosting is managed is both more complex yet with fewer standard features than more consumer focused cPanels, control panels, commonly found for shared website hosting. The platform has a modular setup allowing for plug in of databases, caching, load balancers, and more. Also, adding additional apps, different instances of the site, and arranging them in a pipeline is as easy as adding additional domains in cPanels. Last, open ended environmental variables are available to edit where other website managers would only show settings for simple packaged features such as site databases (maybe even calling them the more technical MySQL databases.)
All of this said, there’s nothing concrete stopping the hosting of a website on Heroku’s platform, even if it is a bit tricky.
Though most of the sites we have are on standard cPanels, we do have a few sites hosted on Heroku. Some of the sites are on Node.js based Content Management Systems, some on Ruby based CMSs. Some of the features are very welcome such as the pipeline configuration, which allows for a seamless development arrangement that is harder to make on a standard shared host. Since Heroku is targeted towards developers, it’s welcome to see these features well thought though.
Most of the pitfalls with the hosting so far are fairly straightforward; don’t have too many virtual instances using the same database, caching needs a careful eye since clients may connect to different instances, and there is a plugin or module for nearly everything but they need some wrangling.
As we build on the sites, it’s a good to compare against the other sites we host, and see how viable sites of different sizes are on Heroku.