App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this...
Transcript of App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this...
![Page 1: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/1.jpg)
App Hosting with Heroku Show&Tell Presentation By Tanya Nam August 22, 2012
![Page 2: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/2.jpg)
Quick development made possible
![Page 3: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/3.jpg)
Closer look at Heroku
� You (developer) will: - Test changes locally - Commit to git - Push git repo to heroku
� Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process types (as defined in Procfile) - launch the app - scale the app
![Page 4: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/4.jpg)
Heroku Polyglot Platform
Cedar – latest, language-agnostic stack Buildpacks: build-time adapters that compile apps into executables
![Page 5: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/5.jpg)
Process management
� What are dynos? Process managers
� Process types: web, worker, cron
� Defined in Procfile:
web: node app.js
worker: node worker.js
� Can create as many processes as
you need => easy scaling
![Page 6: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/6.jpg)
Heroku Add-ons
� MongoLab
� Custom domains
� Apigee for Twitter API (haven’t used yet)
� Scheduler (cron)
� Log management
� Memcache
� And more https://addons.heroku.com/
![Page 7: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/7.jpg)
Who uses Heroku
� Hipster (acquired by AOL in 2012)
� Diaspora - remember Facebook killer?
� Rapportive - Gmail plugin
� SCVNGR - location-based game app
� AllDayEveryDay – NYC-based agency
![Page 8: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/8.jpg)
Other notable PaaS
� Windows Azure (.NET, node.js, Ruby, PHP)
� Nodejitsu (node.js)
� Engine Yard (Ruby, PHP)
� AppFog (PHP, Java, Python, .Net, Ruby, node.js)
� Google App Engine (Java, Python, Go)
� OpenShift by RedHat (Java, Ruby, node.js, Python, PHP, Perl)
![Page 9: App Hosting with Heroku · Heroku will: - detect the app and language - pull the buildpack for this language - install dependencies (as defined in package.json) - discover process](https://reader035.fdocuments.us/reader035/viewer/2022071007/5fc4e81f676aad42830ab0f6/html5/thumbnails/9.jpg)
Resources
� How Heroku buildpacks work: http://blog.heroku.com/archives/2012/7/17/buildpacks/
� Why instant deployment matters: http://blog.heroku.com/archives/2009/2/23/why_instant_deployment_matters/
� Who uses Heroku: http://success.heroku.com/