SlideShare une entreprise Scribd logo
1  sur  24
Heroku in Real Life
jimmy thrasher <jimmy@brownbirdlabs.com>
              @jimmythrasher
My Thesis
Stuff you know already
James-Thrashers-MacBook-Pro:frogs jjthrash$ git push heroku
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 311 bytes, done.
Total 3 (delta 2), reused 0 (delta 0)

-----> Heroku receiving push
-----> Sinatra app detected
-----> Gemfile detected, running Bundler version 1.0.0
    All dependencies are satisfied
    Compiled slug size is 1.6MB
-----> Launching.... done
    http://blooming-stream-31.heroku.com deployed to Heroku

To git@heroku.com:blooming-stream-31.git
  3d13669..54a688e master -> master
Stuff that’s already set up
A Constrained Environment
Gratuitous and Pointless, but nonetheless required

                 DEMO
867-5309
(919) 555-5555
Rapid Development
A Constrained Environment
(Lazy) Control
Real Life:
Action Mailer
Real Life:
Asynchronous Jobs
Real Life:
Emergency Migration
Real Life:
Personal site
Real Life:
Bundler and RVM
Real Life:
hassle (R/O FS)
Real Life:
Support
Real Life in the Future?
  Amazon SNS/SQS
Real Life in the Future?
   Heterogeneous
    Deployment
questions?
•   Attribution

    •   Huntington Library Japanese Rock Garden Wall 0075, Pamla J. Eisenberg: http://
        www.flickr.com/photos/27398485@N08/3279507695/

    •   MG Gundam Exia, _Chag: http://www.flickr.com/photos/_chag/3827822037/

    •   And yet another apple pie, Benny Mazur: http://www.flickr.com/photos/benimoto/
        2109973292/

    •   The walled garden of Hever Castle in Kent, Anguskirk: http://www.flickr.com/
        photos/anguskirk/3209898354/

    •   ¡¡Caza Fantasmas..!!, Jaime el Andrés: http://www.flickr.com/photos/heraclito/
        3561566486/

    •   Spring Peeper 1, Keith Robinson: http://www.flickr.com/photos/kjrob/4509343567/

    •   Chainsaw Art (1), Chuck Walker: http://www.flickr.com/photos/
        cwalker71/1083376338/

    •   One. Lazy. Cat., Jess Loughborough: http://www.flickr.com/photos/

Contenu connexe

Tendances (8)

Mood board for story
Mood board for storyMood board for story
Mood board for story
 
Racesen
RacesenRacesen
Racesen
 
Assignment 1 (8)
Assignment 1 (8)Assignment 1 (8)
Assignment 1 (8)
 
Iron Chef and Hyper Docs
Iron Chef and Hyper DocsIron Chef and Hyper Docs
Iron Chef and Hyper Docs
 
Im Not Happy Till You're Not Happy: Building better Information Security rela...
Im Not Happy Till You're Not Happy: Building better Information Security rela...Im Not Happy Till You're Not Happy: Building better Information Security rela...
Im Not Happy Till You're Not Happy: Building better Information Security rela...
 
Insiders itd
Insiders itdInsiders itd
Insiders itd
 
Cristina h poetry
Cristina h poetryCristina h poetry
Cristina h poetry
 
Ha3 task 1
Ha3 task 1Ha3 task 1
Ha3 task 1
 

En vedette

En vedette (7)

The Asynchronous Pattern (for beginners)
The Asynchronous Pattern (for beginners)The Asynchronous Pattern (for beginners)
The Asynchronous Pattern (for beginners)
 
Speedy perception trumps speedy reception–smart asynchronous interactions - L...
Speedy perception trumps speedy reception–smart asynchronous interactions - L...Speedy perception trumps speedy reception–smart asynchronous interactions - L...
Speedy perception trumps speedy reception–smart asynchronous interactions - L...
 
Git
GitGit
Git
 
Facilitator Training Manual
Facilitator Training ManualFacilitator Training Manual
Facilitator Training Manual
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 

Dernier

Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
panagenda
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
UXDXConf
 

Dernier (20)

How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4j
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & Ireland
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
 

Heroku in Real Life

Notes de l'éditeur

  1. I&amp;#x2019;m a software consultant from Efland Rails dev since last year, Ruby dev since the turn of the millenium Credibility: MBP, iPod Touch Not an employee of Heroku, just a fan Next: Thesis
  2. Code flows like the wind. If you don&amp;#x2019;t use Heroku A wall arises. &lt;poll&gt; Production code in Heroku? Live toy code in production? Have played with it/read about it? Haven&amp;#x2019;t heard of it? Next: What is Heroku?
  3. What is Heroku? Components version, a flyover. From a developer&amp;#x2019;s perspective.. Heroku architecture is interesting, but out of scope. Next: Stuff you know already
  4. Rack, Thin, Varnish, Linux, PGSQL, git Varnish will use Cache-Control headers and static content is automatically cached. Next: git workflow
  5. Next: Stuff that&amp;#x2019;s already set up
  6. Stack, Memcached, SendGrid, New Relic, /dev/ops Next: constrained environment
  7. 30s hard limit on request length, R/O FS, no SSH Next: Demo
  8. Just kidding
  9. Next: What is Heroku, take 2
  10. What is Heroku? Principles version. Next: Rapid Development
  11. Up and running in no time with a real URL. This is why it&amp;#x2019;s my GOTO service. Next: Constrained environment
  12. Very easy to migrate *from* Heroku, code becomes the focus (e.g. Rake tasks) Next: Lazy control
  13. Most decisions are late-binding. How many nodes? What kind of caching? Etc. Couple of iOS mgmt apps (Nezumi, Doppler). Next: Real Life
  14. Action Mailer. No code, configuration, just heroku addons:add sendgrid:free.
  15. SimpleGeo (3rd-party), long-running tasks Delayed::Job, Async Jobs controller, AsyncResults model
  16. Emergency Migration: Had a site where we lost access to the admin, and needed to get up and running again. Took 30 minutes. Could have been faster if I&amp;#x2019;d automated app setup.
  17. Bucketwise Simple personal site, deployed with free Heroku support. Gets shut down occasionally, but no problem.
  18. Bundler and RVM: They are the man. require &amp;#x2018;generator&amp;#x2019; (Ruby 1.8.6) Getting app set up and telling Heroku your dependencies become the same operation
  19. hassle: Using Compass, which renders CSS, but Heroku has a read only FS. hassle renders to tmp FS. Works locally, works on Heroku.
  20. Hint: Become a paying customer and use tickets. Freenode and email list covered by other devs.
  21. Long-polling is impossible in Heroku. This may be a simple way to enable it.
  22. Zynga deployment = known core of real machines, variable group of virtual servers to handle bursts