Command Line Tool• heroku• E.g. creates new applications• Other management functions – addons – logs – etc.
Other Tools• heroku tool creates an empty git repository• Deploy new versions with git• Build (maven) done by Heroku• Build automatically deployed• No specialized tools needed – git is enough• Integration with Atlassian Bamboo possible
Flexibility• Dynos: processes run on Heroku• Procfile defines command line to start a “Dyno”• Can be tuned and changed• Can create custom “Buildpack” to run entirely different environments• Available as Open Source e.g. for Ruby, PHP, Erlang, EmacsLisp…
Restrictions• Max source and build artifact size: 100MB• No sticky sessions• Dynos may not use more than 512MB RAM• I.e. max JVM heap about 400MB
Plattform• Amazon Web Services• US East region only• Proven foundation• Can use AWS resources as part of the solution• 750h per month free
Other Services• Heroku supports Add-ons• Postgresql and memcached by Heroku• Many 3rd party• E.g. relational databases, NoSQL databases, logging, caches…• Configuration passed to service via environment variables
Heroku: Highlights• Very flexible: Supports many different environments• Broad range of additional services• Also covers build