process types image

This commit is contained in:
Adam Wiggins
2011-06-05 01:19:03 -07:00
parent af0180abc9
commit 486d6f9ac8
2 changed files with 1 additions and 1 deletions
+1 -1
View File
@@ -3,7 +3,7 @@
Any computer program, once run, is represented by one or more processes. Web apps have taken a variety of process-execution forms. For example, PHP processes run as child processes of Apache, started on demand as needed by request volume. Java processes take the opposite approach, with the JVM providing one massive uberprocess that reserves a large block of system resources (CPU and memory) on startup, with concurrency managed internally via threads. In both cases, the running process(es) are only minimally visible to the developers of the app.
<img src="http://s3.amazonaws.com/adamheroku_blog/process_diagram.png" style="border: 1px solid #777" />
![Scale is expressed as running processes, workload diversity is expressed as process types.](/images/process-types.png)
**In the twelve-factor app, processes are a first class citizen.** Processes in the twelve-factor app take strong cues from [the unix process model for running service daemons](http://adam.heroku.com/past/2011/5/9/applying_the_unix_process_model_to_web_apps/). Using this model, the developer can architect their app to handle diverse workloads by assigning each type of work to a *process type*. For example, HTTP requests may be handled by a web process, and long-running background tasks handled by a worker process.
Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB