Web serving revolution

Last year, however, a study by MindCraft (www.mindcraft.com) suggested that Apache's performance in serving static HTML pages (those which are not generated by databases and server side applications) rated very poorly. The finger was pointed not only at the Apache server, but at the Linux operating system. Questions were raised in the industry as to the nature of MindCraft's ties with companies which may be threatened by the success of the Linux/Apache combination in the Web world. Regardless of this, closer examination did reveal problems with the way the Linux operating system handles large numbers of small requests on a network, and with Apache's performance serving model.

This examination led to a lot of work on the Linux networking core, as well as work commencing on a new kind of Web server. The result of these efforts is apparent in the up-and-coming Linux 2.4 release: not only does Linux now offer much faster networking, it also offers the ability to run a kernel-level Web server.

Kernel level

The Tux Web server has been one of the most successful projects to come from the work on Linux and Web serving. Whereas Apache is designed to run as an application, Tux is integrated into the operating system, making its performance more efficient. The reason is that it can access system resources faster because it does not have to interact with the operating system to the extent that Apache does.

Some would say that a Web server should stay an application and not encroach upon the kernel. Critics of the Linux movement go further, aligning the integration of a Web server with an operating system with the integration of a Web browser with an operating system, as was the case with Windows 98, which sparked anti-trust cases in the US and Europe against Microsoft.

The difference with Tux, and the other kernel-level Web servers (such as khttpd), is that you don't have to use them. In fact, you have to go to some effort (see below) to use them by default.

Tux 1.0

The recently released Tux 1.0 server boasts commercial quality Web serving designed to tie in with Linux 2.4 (Tux 1.0 and a 2.4 test kernel have been included on this month's CD). Recognising problems with Apache's static serving model, the Standard Performance Evaluation Corporation (SPEC) and Dell decided to use Tux 1.0 to benchmark Linux Web serving capabilities (the results can be viewed at: www.spec.org/osg/web99/results/res2000q3/web9920000710-00057.html). The Dell server had eight Intel Xeon CPUs with 32GB of RAM. Using the same benchmarking tools, SPEC found that an IBM pSeries eServer boasting 64GB of RAM, 12 64-bit CPUs and a super fast data bus which was not running Tux 1.0 performed only 12 per cent faster. Considering the Dell hardware was seriously outmatched by IBM's offering, one can be sure that Tux 1.0 offers what may be among the best performance available in the Web server industry.

Installing

Tux 1.0 is developed by Red Hat, and, in testing the software, I found that it is complicated to install on non-Red Hat systems. As such, unless you are confident with command-line fiddling under Linux, I would recommend using a Red Hat system to test Tux 1.0.

To install Tux 1.0, you will need to install the 2.4 release kernel included on the cover CD. Follow the CD instructions on the installation of each package and then reboot. On completion of installation, you will be running what is effectively Linux 2.4, ready to get a kernel Web server up and running.

Setup

If you have looked around your Linux system, you will be familiar with the /proc file system. This file system offers a means of directly interacting with the kernel. /proc is used to setup Tux 1.0.

At the command line, run the following:

modprobe tux

echo 8080 > /proc/sys/net/http/clientport

echo 80 > /proc/sys/net/http/serverport

echo /home/www > /proc/sys/net/http/documentroot

echo 1 > /proc/sys/net/http/threads

echo 1 > /proc/sys/net/http/logging

echo php3 > /proc/sys/net/http/dynamic

tux 1 /home/www

The first line loads the Tux 1.0 module; the second sets the dynamic Web server port to 8080 (you can use Apache with Tux 1.0 to serve dynamic content by changing the Apache port number to 8080 in the httpd.conf con-figuration file); the third line sets the Tux 1.0 Web port; the fourth line sets the location of the Web pages for serving, here /home/www; the fifth to seventh lines turn on features threading, logging and PHP dynamic web pages; and, the final line starts the Web server with 1 thread and a document root of /home/www.

Conclusion

Tux 1.0 offers a simple in-road to the power of Linux 2.4 with a different means of Web page serving. The limitations of Tux 1.0 - it is complicated to install on non-Red Hat systems and requires a secondary Web server like Apache to serve dynamic content - do not undermine its power and efficiency. Tux addresses a hole in open source Web serving and offers to open source users and businesses alike a stable and fast Web server of commercial quality.

Join the newsletter!

Or

Sign up to gain exclusive access to email subscriptions, event invitations, competitions, giveaways, and much more.

Membership is free, and your security and privacy remain protected. View our privacy policy before signing up.

Error: Please check your email address.
Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Gavin Sherry

PC World
Show Comments

Brand Post

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Tom Pope

Dynabook Portégé X30L-G

Ultimately this laptop has achieved everything I would hope for in a laptop for work, while fitting that into a form factor and weight that is remarkable.

Tom Sellers

MSI P65

This smart laptop was enjoyable to use and great to work on – creating content was super simple.

Lolita Wang

MSI GT76

It really doesn’t get more “gaming laptop” than this.

Jack Jeffries

MSI GS75

As the Maserati or BMW of laptops, it would fit perfectly in the hands of a professional needing firepower under the hood, sophistication and class on the surface, and gaming prowess (sports mode if you will) in between.

Taylor Carr

MSI PS63

The MSI PS63 is an amazing laptop and I would definitely consider buying one in the future.

Christopher Low

Brother RJ-4230B

This small mobile printer is exactly what I need for invoicing and other jobs such as sending fellow tradesman details or step-by-step instructions that I can easily print off from my phone or the Web.

Featured Content

Product Launch Showcase

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?