Dynos, stacks and add-ons
A dyno is a single instance of an application running on Heroku. Under the hood, a dyno is an Ubuntu server with a Quad Core Processor and 51O MB of RAM. Each dyno has an isolated chroot jail environment (implying restriction to a single directory, wLWh QR VyVWHP fiOHV DFFHVV). $ GyQR FDQ UuQ DQy WySH RI VHUYLFH such as Web (serving HTTP requests), worker (asynchronous jobs) and scheduler (for scheduling capabilities like cron).
7hH flHxLELOLWy RI HHURNu OLHV LQ VFDOLQJ WhH QuPEHU RI GyQRV active at a certain point in time. All incoming HTTP requests are passed through a load balancer that routes them to multiple dynos, allowing an application to serve more users concurrently. Heroku’s architecture is sure to fascinate any scalability geek. sisit http:// www.heroku.com/how to delve deeper into the architecture.
The OS, along with language runtime and libraries, makes up a ‘Heroku stack’ that provides a software environment for the applications. Heroku currently uses an Ubuntu 10.04-based ‘Cedar’ stack, and an older Debian Lenny 5-based ‘Badious Bamboo’ stack. However, you cannot use the ‘Badious Bamboo’ for a new application. You can read more about the Heroku stacks at https://devcenter.heroku.com/articles/stack.
Heroku add-ons are great infrastructure services that VLPSOLIy GHSORyPHQW. 7R QDPH D IHw EHQHfiWV, DGG-RQV provide data stores, caching servers, searching infrastructure, media management and payment gateways. Like dynos, add-ons can be dynamically attached or removed. For the complete add-on list, visit: https://addons.heroku.com/.
The next step is to create an application on Heroku, as follows:
If you do not specify a name for the application (as in the example above), Heroku comes up with a name for you. You may, however, want to specify a name when executing the create command. Finally, in the directory where the project’s Git repository resides, issue git push heroku master to deploy your application. This is all you need to deploy your application on Heroku. As advertised earlier, Heroku does truly simplify deployment.