SwitchPipe manages and forwards HTTP requests to Web application processes, automatically managing balancing, port numbers, monitoring and timeouts.
Deploying a Rails app becomes an "upload and run" process.
What is SwitchPipe?
SwitchPipe is a proof of concept "Web application server" or, more accurately, a Web application process manager and request proxy. Backend Web applications are loaded into their own processes, making SwitchPipe language agnostic. HTTP requests are proxied at the TCP level using information extracted from the headers to establish which backend application is being demanded.

SwitchPipe can:
- automatically manage clusters of multiple applications, including port number management
- maintain and update application configurations "on the fly"
- timeout any backend app instances that haven't been used for a certain period of time
- keep process and memory usage to a minimum, as backend app clusters don't need to run constantly
- enforce your personal choices for timeouts and minimum / maximum numbers of processes
Furthermore, it's:
- super easy to configure
- the easiest way to deploy multiple HTTP-talking backend applications
- a real step forward in multi-app, clustered, multi-language, multi-framework Web application deployment!
- for Linux and OS X only so far
- easiness over performance (although it's not slow!)
Quick Start
The complete guide to installing and starting to use SwitchPipe is here, in the official documentation. For those with strong stomachs, however, you can export the latest release (1.04 - February 10, 2008):
svn export http://switchpipe.org/switchpipe1/tags/release-1.04 switchpipe
.. or, if really brave, check out from the trunk:
svn co http://switchpipe.org/switchpipe1/trunk switchpipe
A tarball of 1.04 for those without SVN is at: switchpipe-1.04.tar.gz
The quickest thing you can do once you have a copy of SwitchPipe, is to go into its main directory, and run:
./script/demo
This "demo" script will install the dependencies, create temporary config files, run SwitchPipe, perform some requests, then clean up again.. just so you can see it all working.
History
February 10, 2008: Public release of version 1.04.
February 1, 2008: Public release of version 1.02.
January 21-30, 2008: Testing of SwitchPipe managing several publicly facing Rails apps and much bug fixing.
January 20, 2008: Private releases of version 1.00 and 1.01.
January 10, 2008: SwitchPipe starts life as "RBoss", inspired by the comments on this post at Ruby Inside.
|
|
| Subscribe to SwitchPipe's Group |
| Visit this group |