From 8f992eaa362cc2c684a6f7789d1ff82b1282f538 Mon Sep 17 00:00:00 2001 From: Adam Wiggins Date: Sun, 5 Jun 2011 12:09:22 -0700 Subject: [PATCH] bunch of tweaks plus attached resources diagram --- content/backing-services.md | 10 ++++++---- content/config-in-practice.md | 2 +- content/config.md | 12 ++++++------ content/dependencies.md | 8 ++++---- content/who.md | 2 +- public/images/attached-resources.png | Bin 0 -> 56577 bytes 6 files changed, 18 insertions(+), 16 deletions(-) create mode 100644 public/images/attached-resources.png diff --git a/content/backing-services.md b/content/backing-services.md index 7405334..da91f06 100644 --- a/content/backing-services.md +++ b/content/backing-services.md @@ -3,13 +3,15 @@ A *backing service* is any service the app accesses over the network as part of its normal operation. Examples include datastores (such as [MySQL](http://dev.mysql.com/) or [CouchDB](http://couchdb.apache.org/)), messaging/queueing systems (such as [RabbitMQ](http://www.rabbitmq.com/) or [Beanstalkd](http://kr.github.com/beanstalkd/)), SMTP services for outbound email (such as [Postfix](http://www.postfix.org/)), and caching systems (such as [Memcached](http://memcached.org/)). -Traditionally, backing services such as the database are considered "local," and part of the app. In addition to these locally-managed services, the app may also have services provided and managed by third parties. Examples include SMTP services (such as [Postmark](http://postmarkapp.com/)), metrics-gathering services (such as [New Relic](http://newrelic.com/) or [Loggly](http://www.loggly.com/)), binary asset services (such as [Amazon S3](http://aws.amazon.com/s3/)), and even API-accessible consumer services (such as [Twitter](http://dev.twitter.com/), [Google Maps](http://code.google.com/apis/maps/index.html), or [Last.fm](http://www.last.fm/api)). +Traditionally, backing services like the database are managed by the same admins as the app's deploy. In addition to these locally-managed services, the app may also have services provided and managed by third parties. Examples include SMTP services (such as [Postmark](http://postmarkapp.com/)), metrics-gathering services (such as [New Relic](http://newrelic.com/) or [Loggly](http://www.loggly.com/)), binary asset services (such as [Amazon S3](http://aws.amazon.com/s3/)), and even API-accessible consumer services (such as [Twitter](http://dev.twitter.com/), [Google Maps](http://code.google.com/apis/maps/index.html), or [Last.fm](http://www.last.fm/api)). -**The twelve-factor app makes no distinction between local versus third party services.** To the app, both are backing services, accessed via a URL or other locator/credentials stored in the [config](/config). A [deploy](/codebase) of the twelve-factor app should be able to swap out a local MySQL database with one managed by a third party (such as [Amazon RDS](http://aws.amazon.com/rds/)) without any changes to the app's code. Likewise, or a local SMTP server could be swapped with a third-party SMTP service (such as Postmark) without code changes. In both cases, only the resource handle in the config needs to change. +**The code for a twelve-factor app makes no distinction between local versus third party services.** To the app, both are backing services, accessed via a URL or other locator/credentials stored in the [config](/config). A [deploy](/codebase) of the twelve-factor app should be able to swap out a local MySQL database with one managed by a third party (such as [Amazon RDS](http://aws.amazon.com/rds/)) without any changes to the app's code. Likewise, or a local SMTP server could be swapped with a third-party SMTP service (such as Postmark) without code changes. In both cases, only the resource handle in the config needs to change. -A backing service like Amazon RDS provisions into *private resources*. The app has a resource handle (ideally in URL form, like `mysql://user:pass@host/db`) which points to the private resource and provides everything the app needs to access it. For a service Amazon RDS, the resource is a database. For a service like New Relic or a consumer service like Last.fm, the resource is an account or a user. +Provisioning a database from a cloud-based backing service like Amazon RDS is done via API. Provisioning produces a *private resource*. The provisioned resource has a resource handle (typically in URL form, like `mysql://user:pass@host/db`) which points to the private resource and provides everything the app needs to access it. For a service Amazon RDS, the resource is a database. For a service like New Relic or a consumer service like Last.fm, the resource is an account or a user. -Further, the resources are referred to as *attached resources* to indicate their loose coupling to the deploy they are connected to. Resources can be attached to and detached from deploys at will. +The twelve-factor app treats these resources as *attached resources*, which indicates their loose coupling to the deploy they are attached to. Resources can be attached and detached to deploys at will. + +A production deploy attached to four backing services. For example, the process of upgrading a database to a server with more compute and memory will typically look like this: diff --git a/content/config-in-practice.md b/content/config-in-practice.md index f978dc0..aaa9994 100644 --- a/content/config-in-practice.md +++ b/content/config-in-practice.md @@ -18,7 +18,7 @@ This violates twelve-factor because it stores config in the codebase. end end -This violates twelve-factor because it uses a conditional on the RACK_ENV value which stores an deploy name like `staging` or `production`. This stores config in the codebase (the hardcoded hostnames), and uses a non-granular, non-orthogonal deploy name to choose the canonical host. Both of these things make it impossible to add new deploys without changing the code. (As a thought experiment, imagine what it would take to open-source an app that had the above block of code in it.) +This violates twelve-factor because it uses a conditional on the `RACK_ENV` value which stores an deploy name like `staging` or `production`. This stores config in the codebase (the hardcoded hostnames), and uses a non-granular, non-orthogonal deploy name to choose the canonical host. Both of these things make it impossible to add new deploys without changing the code. (As a thought experiment, imagine what it would take to open-source an app that had the above block of code in it.) ## Doing it right: Hostname from an env var diff --git a/content/config.md b/content/config.md index 24f5cf6..7533c9b 100644 --- a/content/config.md +++ b/content/config.md @@ -3,18 +3,18 @@ An app's *config* is everything that can vary between [deploys](/codebase). This includes: -* URLs to to app's database, memcached, and other [backing services](#) +* Resource handles to the database, memcached, and other [backing services](#) * Credentials to external services such as Amazon S3 or Twitter * Per-deploy values such as the canonical hostname for each deploy -A common practice is for apps to store config as constants in the code. This is a violation of twelve-factor, which requires strict separatation of config from code. Config varies substantially across deploys, code does not. A litmus test for whether an app has all config correctly factored out of the code is whether the codebase be published as open source without compromising any credentials. +A common practice is for apps to store config as constants in the code. This is a violation of twelve-factor, which requires **strict separatation of config from code**. Config varies substantially across deploys, code does not. A litmus test for whether an app has all config correctly factored out of the code is whether the codebase could open sourced as-is without compromising any credentials. -Another approach is to store config in config files which are not checked into revision control, such as `config/database.yml` in Rails. This is a huge improvement over using constants which are checked into the code repo, but still has weaknesses: it's easy to mistakenly check in a config file to the repo, and there is a tendency for config files to be scattered about in different places and different formats, making it hard to see all the config for a given deploy at one time. +Another approach to config is storing it in config files which are not checked into revision control, such as `config/database.yml` in Rails. This is a huge improvement over using constants which are checked into the code repo, but still has weaknesses: it's easy to mistakenly check in a config file to the repo, and there is a tendency for config files to be scattered about in different places and different formats, making it hard to see and manage all the config in one place. -The best place for config is in *environment variables* (often shortened to *env vars* or *env*). Env vars are easy to change between deploys without changing any code, and unlike config files, there is no chance of them being checked into the code repo accidentally. +**The twelve-factor app stores config in *environment variables*** (often shortened to *env vars* or *env*). Env vars are easy to change between deploys without changing any code, and unlike config files, there is little chance of them being checked into the code repo accidentally. -One method of managing config is batching it up into named groups (often called "environments"), such as the `development`, `test`, and `production` environments in Rails. This method does not scale cleanly: as more deploys of the app are created, new environment names are necessary - for example, `staging` or `qa`. As the project grows further, developers may add their own special environments like `joes-staging`. The worst outcome of this is when the application begins using conditionals to change behavior based on the environment name - code that looks like `do_something_for_production if Rails.environment == 'production'`. +Yet another method of managing config is batching it up into named groups (often called "environments") named after specific deploys, such as the `development`, `test`, and `production` environments in Rails. This method does not scale cleanly: as more deploys of the app are created, new environment names are necessary - for example, `staging` or `qa`. As the project grows further, developers may add their own special environments like `joes-staging`. The worst outcome of this is when the application begins using conditionals to change behavior based on the environment name - code that looks like `do_something_for_production if Rails.environment == 'production'`. -In a twelve-factor app, env vars are each orthogonal values, not grouped together as "environments," but independently controllable for each deploy. This is a model that scales up smoothly as the app naturally grows more deploys over its lifetime. +In a twelve-factor app, env vars are granular controls, each fully orthogonal to other env vars. They are never grouped together as "environments," but instead are independently controllable for each deploy. This is a model that scales up smoothly as the app naturally expands into more deploys over its lifetime. A common pattern with env vars is to fall back on sensible defaults when not set. For example, an app may use the `CANONICAL_HOST` env var for redirects, but the app will not attempt a redirect the the value is not set (which is usually desirable for development deploys). Or assuming a local memcached if the MEMCACHED_URL is not set. In this way, no env vars means the app is running as a vanilla development deploy. diff --git a/content/dependencies.md b/content/dependencies.md index 5fdd6fb..6337832 100644 --- a/content/dependencies.md +++ b/content/dependencies.md @@ -1,12 +1,12 @@ ## II. Dependencies ### Explicit dependency declaration and isolation -Most programming languages offer a packaging system for distributing support libraries, such as [CPAN](http://www.cpan.org/) for Perl or [Rubygems](http://rubygems.org/) for Ruby. Libraries installed through a packaging system can be installed system-wide (known as "site packages") or only into the directory containing the app (known as "vendoring" or "bundling"). +Most programming languages offer a packaging system for distributing support libraries, such as [CPAN](http://www.cpan.org/) for Perl or [Rubygems](http://rubygems.org/) for Ruby. Libraries installed through a packaging system can be installed system-wide (known as "site packages") or scoped into the directory containing the app (known as "vendoring" or "bundling"). -A twelve-factor app *never* relies on implicit existence of system-wide packages. It declares all dependencies, completely and exactly, via a *dependency declaration* tool. Furthermore, it uses *dependency isolation* tool during execution to ensure that no implicit dependencies "leak in" from the surrounding system. +**A twelve-factor app never relies on implicit existence of system-wide packages.** It declares all dependencies, completely and exactly, via a *dependency declaration* tool. Furthermore, it uses a *dependency isolation* tool during execution to ensure that no implicit dependencies "leak in" from the surrounding system. -For example, [Gem Bundler](http://gembundler.com/) for Ruby offers the `Gemfile` format for declaration and `bundle exec` for dependency isolation. In, Python there are two separate tools for these steps - [Pip](http://www.pip-installer.org/en/latest/) is used for dependency declaration and [Virtualenv](http://www.virtualenv.org/en/latest/) for dependency isolation. Regardless of tools, dependency declaration and isolation must be used together - only one or the other is not sufficient for a twelve-factor app. +For example, [Gem Bundler](http://gembundler.com/) for Ruby offers the `Gemfile` format for dependency declaration and `bundle exec` for dependency isolation. In, Python there are two separate tools for these steps - [Pip](http://www.pip-installer.org/en/latest/) is used for declaration and [Virtualenv](http://www.virtualenv.org/en/latest/) for isolation. No matter what the toolchain, dependency declaration and isolation must always be used together - only one or the other is not sufficient for a twelve-factor app. -One benefit of explicit dependency declaration is that it simplifies setup for developers new to the app. The new developer can check out the app's codebase onto their development machine, requiring only the language runtime and dependency manager installed as prerequisites. They will be able to set up everything needed to run the app's code with a *deterministic build command*. For example, the build command for Ruby/Bundler is `bundle install`, while for Clojure/Leiningen it is `lein deps`. +One benefit of explicit dependency declaration is that it simplifies setup for developers new to the app. The new developer can check out the app's codebase onto their development machine, requiring only the language runtime and dependency manager installed as prerequisites. They will be able to set up everything needed to run the app's code with a deterministic *build command*. For example, the build command for Ruby/Bundler is `bundle install`, while for Clojure/Leiningen it is `lein deps`. Twelve-factor apps also do not rely on the implicit existence of any system tools. Examples include shelling out to ImageMagick or `curl`. While these tools may exist on many or even most systems, there is no guarantee that they will exist on all systems where the app may run in the future, or whether the version found on a future system will be compatible with the app. If the app needs to shell out to a system tool, that tool must be vendored into the app. diff --git a/content/who.md b/content/who.md index a4c938a..2689ae2 100644 --- a/content/who.md +++ b/content/who.md @@ -1,4 +1,4 @@ Who should read this document? ============================== -Any developer building applications run as a service. Ops engineers who deploy or run such applications. +Any developer building applications run as a service. Ops engineers who deploy or manage such applications. diff --git a/public/images/attached-resources.png b/public/images/attached-resources.png new file mode 100644 index 0000000000000000000000000000000000000000..5c29c7e4ad651ff5fe8b8843759c4dc08841614f GIT binary patch literal 56577 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 IIVCg!0L^_Cy8r+H literal 0 HcmV?d00001