Synopses & Reviews
Take full advantage of Herokus cloud-based hosting services. This guide takes you through the inner workings of this PaaS platform and delivers practical advice for architecting your application to work as efficiently as possible. Youll learn best practices for improving speed and throughput, solving latency issues, locating and fixing problems if your application goes down, and ensuring your deployments go smoothly.
By covering everything from basic concepts and primary components to add-on services and advanced topics such as buildpacks, this book helps you effectively deploy and manage your application with Heroku.
- Learn your way around Heroku with the command line interface
- Discover several methods for scaling your application to increase throughput
- Speed up response time through performance optimizations
- Solve latency issues by deploying your Heroku instance in new regions
- Choose the right plan for using Herokus PostgreSQL database-as-a-service
- Get a checklist of items to consider when deploying your application
- Find and fix problems during deployment, at runtime, and when your application goes down
- Understand how Heroku buildpacks work, and learn how customize your own
Build, deploy, and manage applications in the cloud with Heroku, one of the first PaaS platforms to offer sophisticated hosting and development services. With this book, youll learn how to use Herokus Cedar runtime stack, a polyglot platform with native support for several languages and frameworks, including Ruby, Python, Node.js, Java, and more.
Learn about how the Heroku platform works and read about day-to-day best practices for hosting your applications on the platform. Youll learn everything from basic concepts to advanced topics such as Buildpacks so you can start running in the cloud right away.
About the Author
Neil Middleton has been developing web applications for over 15 years across a variety of industries and technologies. Now working for a popular agency in the south of England, Neil primarily spends his time writing Ruby applications and deploying to Heroku - the cloud platform provider. Neil is a massive fan of keeping things simple and straightforward.
Richard Schneeman has been writing Ruby on Rails apps since version 0.9. He works for Heroku on the Ruby Task Force and is responsible for the Ruby buildpack. He teaches Ruby at the University of Texas. Richard loves elegant solutions and beautiful code.
Table of Contents
Preface; So, What Is Heroku?; Who This Book Is For; The History of Heroku; The Heroku Culture; Why Would I Want to Learn More About Heroku?; Conventions Used in This Book; Safari® Books Online; How to Contact Us; From the Authors: Neil Middleton; From the Authors: Richard Schneeman; Disclaimer; Chapter 1: Getting Started with Heroku; 1.1 The Dawn of Virtual Servers; 1.2 Enter the Cloud; 1.3 You New Around Here?; 1.4 Quick Start; Chapter 2: How Heroku Works; 2.1 What Is a Dyno?; 2.2 HTTP Routing; 2.3 The Dyno Manager and Dynos; 2.4 Other Services; Chapter 3: Understanding Performance and Scale; 3.1 Horizontal Scaling and You; 3.2 Speeding Up Your App; 3.3 Explaining Postgres Performance; 3.4 Caching Expensive Queries; 3.5 Back that Task Up; 3.6 Full-Text Search Apps; 3.7 Performance Testing; Chapter 4: Heroku Regions; 4.1 Multiregion or Single?; 4.2 The Heroku Way; 4.3 Constraints; Chapter 5: Heroku PostgreSQL; 5.1 Why PostgreSQL?; 5.2 Choosing the Right Plan; 5.3 Getting Started; 5.4 Importing and Exporting Data; 5.5 PGBackups; 5.6 Data Clips; 5.7 Followers; 5.8 Forking; 5.9 Other Features; Chapter 6: Deployment; 6.1 Timeliness; 6.2 Backing Out; 6.3 Testing; 6.4 How to Deploy, and Deploy Well; 6.5 Teams; 6.6 DNS; Chapter 7: When It Goes Wrong; 7.1 Dev Center; 7.2 Heroku Support; 7.3 Deploy Debugging; 7.4 Runtime Error Detection and Debugging; 7.5 Runtime Error Debugging; Chapter 8: Buildpacks; 8.1 Before Buildpacks; 8.2 Introducing the Buildpack; 8.3 Release; 8.4 Profile.d Scripts; 8.5 Leveraging Multiple Buildpacks; 8.6 Quick and Dirty Binaries in Your App; 8.7 The Buildpack Recap; Colophon;