Tube Web Server
A scalable synchronous server using pipeline architecture. The pipeline architecture resemble the design of Glassfish Application Server.
Tube Web Server aims to be a scalable, flexible, extensible Web Server. It was designed to make developers writing web logic within the Web Server as easy as possible, and at the same time, reaching fair performance and scalability.
Currently, Tube Web Server is under heavy developments. The primary platform to support is Linux 2.6. FreeBSD 6+ and Solaris 10+ are also supported, but under heavy developments currently.
The Tube Web Server is written in C/C++. To build Tube Web Server, you'll need the following tools and libraries installed.
SCons> 2.0. available at http://www.scons.org/
- boost library with the following component:
yaml-cppavailable at http://code.google.com/p/yaml-cpp/
ragelavailable at http://www.complang.org/ragel/
jemallocavailable at http://www.canonware.com/jemalloc/
To Build Tube, simply run
If you want the release version (which doesn't have log and debug symbol)
% scons release=1
After building process succeeded, run the following to install
# scons install
If you want to install in a sandbox directory (or DESTDIR in automake terminology), use
% scons install --install-sandbox=<dir>
After installation, you should be able to use
tube-server. Make sure that
tube-server is in your
libtube-web.so are able to load by system.
tube-server -c config_file [ -m module_path -u uid]
config_fileis the configuration file. This is required.
module_pathis the path containing all the modules. This is optional.
uidis the uid if you want
tubeswitch uid before launch. This is optional
There's a sample config file in
MIT License. See
License file for details.
Mike Qin <mikeandmore AT gmail.com>