diff options
| author | Owen Jacobson <owen.jacobson@grimoire.ca> | 2013-02-02 14:23:27 -0500 |
|---|---|---|
| committer | Owen Jacobson <owen.jacobson@grimoire.ca> | 2013-02-02 14:23:27 -0500 |
| commit | b5f0131c00aa0827eac8702c47b30fb62ed3d65a (patch) | |
| tree | 718df1314226b9c76a508d4dcfaaf4a3790cdcc9 /wiki/12factor | |
| parent | 28a1613d5c44e063546a7d69039cff20e8f37f2b (diff) | |
Some musings on kwargs in Java.
Diffstat (limited to 'wiki/12factor')
| -rw-r--r-- | wiki/12factor/7-port-binding.md | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/wiki/12factor/7-port-binding.md b/wiki/12factor/7-port-binding.md new file mode 100644 index 0000000..2daf342 --- /dev/null +++ b/wiki/12factor/7-port-binding.md @@ -0,0 +1,31 @@ +# Factor 7: Port Binding + +[This](http://www.12factor.net/port-binding) is the exact point where the +Heroku-specific features of the approach overwhelm the general features. + +Factor 7 is over-specific: + +* It presupposes the existence of a front-end routing layer, without providing + any insight into how to deploy, configure, provision, or manage one. + +* It demands HTTP (by name) rather than a more flexible "any well-standardized + protocol", without explaining why. (Web apps can have non-HTTP internal + components.) + +* It dismisses the value of "pre-existing" container ecosystems that don't + work the way Heroku does. Have a giant, well-managed + [Glassfish](http://glassfish.org) cluster that you deploy components to? TOO + BAD, not Heroku-like enough for these guys even though many aspects run + along similar philosophical lines. + +* It dismisses the value of unix-as-a-container. Unix domain sockets with + controlled permissions? Psh, let's go through the network stack instead. + SysV IPC? (Yeah, I know.) Network. Pipes? Network. There's an implicit + exception for "intra-process" communication, but it's never really + identified or reasoned about. + +* Have you _seen_ the kinds of process control interfaces developers invent, + when left to their own devices? Signals and PID files are well-established + conventions, and smart, competent people still fuck those up all the time. + Command-line arguments are another frequent case of NIH stupidity. Do you + really want every app to have its own startup API? |
