← ALL SESSIONS
Tue Dec 8 · 10:30 AM SESSION #34167

Building 12 Factor JVM Applications

Matt Stine
Matt Stine
I ENABLE EARLY-CAREER ENTERPRISE SOFTWARE ENGINEERS TO CONTINUOUSLY IMPROVE
01 / ABOUT THIS SESSION

Modern applications are changing as we embrace the engineering practices associated with Continuous Delivery and DevOps, migrate our applications to modern cloud platforms, elastically scale applications with the dynamics of customer demand, and embrace microservices architectures. The Twelve-Factor App is a collection of application development patterns developed by Heroku engineers that aim to support these types of architectural and cultural change.

The 12 Factors are:

  1. One codebase tracked in revision control, many deploys
  2. Explicitly declare and isolate dependencies
  3. Store config in the environment
  4. Treat backing services as attached resources
  5. Strictly separate build and run stages
  6. Execute the app as one or more stateless processes
  7. Export services via port binding
  8. Scale out via the process model
  9. Maximize robustness with fast startup and graceful shutdown
  10. Keep development, staging, and production as similar as possible
  11. Treat logs as event streams
  12. Run admin/management tasks as one-off processes

We’ll examine how to implement these factors using JVM “microframeworks” like Spring Boot and Dropwizard.

02 / SESSION DETAILS
FORMAT
90-minute session
ROOM
AURINKO (2ND FLOOR)
All signal.
Zero fluff.
DECEMBER 7 - 10, 2015 · OPAL SANDS RESORT · CLEARWATER, FL