Git-based deployment strategy
Applications on Heroku are managed with Git. Simply pushing your codebase to Heroku is all it takes to deploy your application.
Heroku offers a growing number of add-ons via its add-on provider program. Additional services, such as error tracking and reporting, incoming and outgoing email services, hosted no-SQL databases, full-text search and more, are available via a few clicks or commands on the prompt.
Heroku Dev Center contains official guides for platform, languages and add-ons etc.,
Any language not supported by default can be enabled by creating a custom 'buildpack'.
For greater safety and portability, Heroku allows you to manage environment-specific configuration separately from your source code.
Fully Managed, Multi-Tenant Architecture
Heroku's architecture is designed to keep your app running smoothly with minimal interaction on your part. The Heroku site has a detailed explanation of its architecture.
All of Heroku's functionality can be accessed from the command line (via the Heroku gem), including managing SSH keys, increasing or decreasing the number of dynos, managing SSL certificates, adding or removing add-ons, and more.
Prior to Rails 4, Heroku uses the plugin system to inject some code into your application when you deploy. Plugins are no longer supported in Rails 4, so Heroku has provided some gems. Please see the Rails 4 Documentation
Reference Links:Source Info