Chapter 5. Application architecture and workflow

 

This chapter covers

  • Building CoreOS into your application architecture
  • Understanding the twelve-factor methodology
  • Harmonizing development, persistence, and presentation

At this point, you should have a basic, practical understanding of how CoreOS functions. This chapter is intended as a primer for someone with a role like software or systems architect. The assumption is that you’ll be building a new application for, or migrating an existing application to, CoreOS. As such, this chapter is less about technical practice and more about the planning you need to do before any technical implementation.

5.1. Your application and the twelve-factor methodology

Suppose you’ve been tasked with drafting the architecture for a new SaaS product, and you want to use CoreOS as your target platform. Where do you start? What are the best practices in this space? Although it isn’t explicitly meant for CoreOS, the twelve-factor methodology (http://12factor.net) is a set of guidelines for successfully architecting complex application stacks. This approach doesn’t define any technologies or processes but is specifically useful in one of two ways, depending on your starting point:

  • If you’re building an application from scratch, it can guide your choices of technology and workflows.
  • If you’re migrating or figuring out how to scale an existing application, it can show you where and how those tasks will be difficult.

Briefly, the 12 factors are as follows:

5.2. The software development cycle

5.3. Summary