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 PC World newsletter!

Error: Please check your email address.

Our Back to Business guide highlights the best products for you to boost your productivity at home, on the road, at the office, or in the classroom.

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Gavin Sherry

PC World
Show Comments

Most Popular Reviews

Latest News Articles

Resources

PCW Evaluation Team

Azadeh Williams

HP OfficeJet Pro 8730

A smarter way to print for busy small business owners, combining speedy printing with scanning and copying, making it easier to produce high quality documents and images at a touch of a button.

Andrew Grant

HP OfficeJet Pro 8730

I've had a multifunction printer in the office going on 10 years now. It was a neat bit of kit back in the day -- print, copy, scan, fax -- when printing over WiFi felt a bit like magic. It’s seen better days though and an upgrade’s well overdue. This HP OfficeJet Pro 8730 looks like it ticks all the same boxes: print, copy, scan, and fax. (Really? Does anyone fax anything any more? I guess it's good to know the facility’s there, just in case.) Printing over WiFi is more-or- less standard these days.

Ed Dawson

HP OfficeJet Pro 8730

As a freelance writer who is always on the go, I like my technology to be both efficient and effective so I can do my job well. The HP OfficeJet Pro 8730 Inkjet Printer ticks all the boxes in terms of form factor, performance and user interface.

Michael Hargreaves

Windows 10 for Business / Dell XPS 13

I’d happily recommend this touchscreen laptop and Windows 10 as a great way to get serious work done at a desk or on the road.

Aysha Strobbe

Windows 10 / HP Spectre x360

Ultimately, I think the Windows 10 environment is excellent for me as it caters for so many different uses. The inclusion of the Xbox app is also great for when you need some downtime too!

Mark Escubio

Windows 10 / Lenovo Yoga 910

For me, the Xbox Play Anywhere is a great new feature as it allows you to play your current Xbox games with higher resolutions and better graphics without forking out extra cash for another copy. Although available titles are still scarce, but I’m sure it will grow in time.

Featured Content

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?