alibaba / Trafficserver
Apache Traffic Server
Traffic Server is a high-performance building block for cloud services. It's more than just a caching proxy server; it also has support for plugins to build large scale web applications.
- DIRECTORY STRUCTURE
traffic/ ............... top src dir |-- cop ................ traffic_cop application |-- doc/ ............... generated documentation |-- example/ ........... example plugins |-- install/ ........... installation programs and scripts |-- iocore/ ............ IO core |-- lib/ ............... |-- ts/ ............ Base / core library |-- tsconfig/....... New config parser and library (experimental) |-- records/ ....... library for config files |-- m4/ ................ custom macros for configure.ac |-- mgmt/ .............. Management server and tools (including traffic_manager) |-- cli ............ Command line utilities and API |-- proxy/ ............. HTTP proxy logic |-- test/ .............. functional tests |-- .indent.pro ........ indent profile for coding style |-- emacs-style ........ emacs style definition |-- README ............. intro, links, build info |-- README-EC2 ......... info on EC2 support |-- REVIEWERS .......... (incomplete) list of areas with committer interest |-- LICENSE ............ full license text |-- NOTICE ............. copyright notices |-- configure.ac ....... autoconf configuration `-- Makefile.am ........ top level automake configuration
- REQUIREMENTS This section outlines different OS distributions
Fedora 11,12, 13, 14, 15: autoconf automake libtool gcc-c++ glibc-devel openssl-devel tcl-devel expat-devel pcre libcap-devel
Fedora 8 EC2 (Kernel: 2.6.21.7-2.ec2.v1.2.fc8xen): FC8 on EC2 requires unique configure declarations, please see that section below.
NOTE: Alternately you may use the install scripts in 'contrib' which
automate this or use the pre-built public Fedora Core 8 EC2 AMI
with ATS installed. Both of which are HIGHLY RECOMMENDED.
See 'README-EC2' for further details.
Install these packages:
autoconf
automake
libtool
gcc-c++
glibc-devel
openssl-devel
tcl-devel
expat-devel
db4-devel
pcre
Ubuntu 8.* ,9., 10., 11.*: autoconf automake libtool g++ libssl-dev tcl-dev expat libexpat-dev libpcre3-dev libcap-dev
Ubuntu EC2 9.10: NOTE: Alternately you may use the install scripts in 'contrib' which automate this or use the pre-built public Ubuntu EC2 AMI with ATS installed. Both of which are HIGHLY RECOMMENDED. See 'README-EC2' for further details.
Install these packages:
autoconf
automake
libtool
g++
libssl-dev
tcl-dev
expat
libexpat-dev
libpcre3-dev
FreeBSD 7.2,8.0: GCC 4.2.1 compiler suite autoconf automake libtool tcl expat openssl pcre
OpenSolaris osol0906: GCC 4.3.2 compiler suite (dev collection) autoconf automake libtool tcl expat openssl pcre
OSX 10.5: GCC 4.2.4 compiler suite (ports collection) autoconf automake libtool tcl expat openssl pcre
- Building from distribution
You can download the latest source code from the official Apache Traffic Server site:
http://trafficserver.apache.org/downloads.html
(or via the URL shortener: http://s.apache.org/uG). Once downloaded, follow the instructions:
tar xf trafficserver-2.1.8-unstable.tar.bz2 cd trafficserver-2.1.8-unstable ./configure # configure the build environment to create Makfiles make # execute the compile
This will build with a destination prefix of /usr/local. You can finish the installation with
sudo make install
- BUILDING FROM SVN REPO
mkdir -p ~/dev # make yourself a development dir cd ~/dev # enter your development dir svn checkout ... # get the source code from ASF Subversion repo cd traffic # enter the checkout dir autoreconf -i # generate the configure script and Makefile.in files ./configure # configure the build environment to create Makfiles make # execute the compile
4b. Instructions for building on EC2 NOTE: Alternately you may use the scripts under 'contrib' which will automate the install for trafficserver under EC2 which is HIGHLY RECOMMENDED. See 'README-EC2' for further details.
As root do the following when using Ubuntu
mkdir -p /mnt #EC2 Storage Mount, where storage is located cd /mnt svn checkout ... # get the source code from ASF Subversion repo cd traffic # enter the checkout dir autoreconf -i --force # generate the configure script and Makefile.in files ./configure make
As root do the following when using Fedora Core 8 kernel
mkdir -p /mnt #EC2 Storage Mount, where storage is located cd /mnt svn checkout ... # get the source code from ASF Subversion repo cd traffic # enter the checkout dir autoreconf -i --force # generate the configure script and Makefile.in files ./configure --disable-eventfd make
- INSTALLATION
DEFAULT DIR CONTENTS /usr/local/var/log/trafficserver log files created at runtime /usr/local/var/trafficserver runtime files /usr/local/etc/trafficserver configuration files /usr/local/bin executable binaries /usr/local/libexec/trafficserver plugins
- CRYPTO NOTICE
This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.
The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.
The following provides more details on the included cryptographic software:
The functionality of OpenSSL <http://www.openssl.org/> is
utilized in parts of the software.
- ADDITIONAL INFO
Web page: http://trafficserver.apache.org/ Wiki: http://cwiki.apache.org/confluence/display/TS/ User mailing list: [email protected]