Apache Week
Issue 110, 10thApril1998:

Copyright 2020 Red Hat, Inc

In this issue

Apache Status

Apache Site: www.apache.org
Release: 1.2.6 (Released 24th March 1998) (local download sites)
Beta: 1.3b5 (Released 19th February 1998) (local download sites)

Apache 1.2.6 is the current stable release. Users of Apache 1.2.5 and earlier should upgrade to this version since it fixes a number of bugs and potential security problems.

Patches for bugs in Apache 1.2.6 may be made available in the apply_to_1.2.6 subdirectory of the patches directory on the Apache site (this directory may not exist if no patches are available). Some new features and other unofficial patches are available in the 1.2 patches directory (these may not apply cleanly to 1.2.6). For details of all previously reported bugs, see the Apache bug database and known bugs pages. Many common configuration questions are answered in the Apache FAQ.

Development has slowed down to prepare for the release of Apache 1.3. During the beta release cycle Apache is in a "feature freeze" where no major new features will be added.

Better Symbol Hiding

The HIDE rule (see Apache Week issue 105) has been removed. This was added to prevent name-space collision between functions defined in Apache and functions with the same name in third-party libraries which may be linked with Apache via modules. This rule added the prefix AP_ to all symbols, via a long list of #define definitions. This had the unfortunate effect of making the symbols in the source code (which did not have the AP_ prefix) different from the symbols seen by debuggers or profilers, making these operations more difficult.

Instead symbols will be hidden now by adding a appropriate prefix to the functions in the source code.

Writing Modules for Windows

In previous betas, the pre-processor macro IS_MODULE was defined when compiling modules into DLL (shared object) files on Windows systems. Now that support for shared objects is consistent across Unix and Windows, this macro has been changed to the same one used for compiling shared modules on Unix, SHARED_MODULE.

Module authors on Windows should ensure that their build environment defines SHARED_MODULE when compiling a module into a DLL file, so that the correct definitions are used from the Apache header files. In the modules distributed with Apache, this is defined in the MSVC++ project file.

Shared Module Support on SVR4

Apache's shared module support (the ability to load binary modules when Apache is started or restarted) has been extended to cover SVR4 based systems. This has required more complexity within the Apache core code, but now provides the same functionality for shared modules as provided on most other Unix systems and on Windows.

As part of this change, it is now possible to build almost all of the core code itself as a loadable module (not just the core module). This is required to get shared modules working on SVR4 systems.

Apache at Open Source Projects Meeting

Netscape's release of the source for Navigator has raised the profile of source code. Recently O'Reilly and Associates convened a press conference to promote source code availablility, and Apache was represented by Brian Behlendorf. Others present included representatives for sendmail, Linux, Perl and Python. Unlike many of these projects, Apache does not have an indentifiable "leader" or any single person who can make final decisions (decisions are made a system of peer review and voting by major contributors).

The meeting was intended to help present the case for source code availablility to the media, but it also discussed the terminology to use. "Free source" or "freeware" were not popular because of the bad reputation of some free software (and it does not imply availablity of source code). Instead "open source" and "openware" were preferred. (Note that "Open Source" is trademarked and is being promoted with a particular definition which is intended to encompass most requirements, see www.opensource.org). WebReview (see below) has a guide to the terms being used, and explains why this is different from the Free Software Foundation's GPL concept.

The conference was reported in many places, for example C|Net wrote that Open source gurus convene and Internet World report that Open Minds Meet at Freeware Summit. WebReview online magazine (which is linked to O'Reilly and Associates) contains a lot of information in a special edition on free or open source software, including an interview with Brian Behlendorf and other representatives of source code software projects.

Apache in the News

PC Magazine online has produced an extensive review of web servers, including Apache running on Solaris and RedHat Linux. This review includes some performance analysis, using the latest version of WebBench. For access to CGI programs, Apache on Solaris had the best performance across the range of loads. At lower load levels, MS IIS was about the same as Apache, but it dropped when the number of clients exceeded about 32. Apache on Linux had slightly lower performance.

They also tested access to static (HTML) content. The total size of the content files requested was about 63Mb, and in servers which contained a built-in cache they ensured that the entire content was cached, so this gave servers with caches much better performance. So Apache's performance in this test was slightly below average for the test. In reality, if static HTML was a priority a cache (such as Squid) or the experimental mod_mmap_static would be used, to bring performance up to the level of other servers which include a built-in cache. The CGI figures are probably a better indication of the underlying performance of the server since they eliminate effect of the cache.