Chapter 3

Porting Your Applications to Heroku

WHAT’S IN THIS CHAPTER?

  • Understanding differences from traditional filesystems
  • Choosing a data store
  • Managing sessions
  • Understanding caching
  • Storing static assets
  • Managing configuration variables
  • Replacing web servers and containers
  • Managing dependencies
  • E-mailing from your application
  • Running cron jobs
  • Understanding logging
  • Relying on external programs
  • Scaling up versus scaling out
  • Binding to ports
  • Managing long-running processes
  • Shutting down gracefully
  • Moving your domain

Porting your existing apps to the Heroku platform seems like a no-brainer. After all, it enables you to take advantage of the many efficiency gains that you can realize by developing on and deploying with the Heroku platform. Nevertheless, you must consider the cost involved in porting an app to the Heroku system. Though apps can be easily moved off of the Heroku platform and onto your platform of choice with little or no change, the reverse is not necessarily true.

Timing is important. Is this the right time to move an app to Heroku? It is often difficult for IT to convince business owners or management that spending developer time to move the app to a new platform is a valuable use of resources. In most organizations, IT departments are considered a cost center, so any activities that do not deliver new features that can help the business side sell more or charge more money for the product or service is difficult to justify. Although you can present a ROI analysis ...

Get Professional Heroku Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.