From 9663798650abb6205d76898ca655381855b3a70e Mon Sep 17 00:00:00 2001
From: "Ralf S. Engelschall"
+ This module is contained in the Module mod_mmap_static
+
+ mod_mmap_static.c
file, with
+ Apache 1.3 and later. It provides mmap()ing of a statically configured list
+ of frequently requested but not changed files. It is not compiled into the
+ server by default. To use mod_mmap_static
you have to enable
+ the following line in the server build Configuration
file:
+
+ AddModule modules/experimental/mod_mmap_static.o
+
+
+ This is an experimental module and should be used with
+ care. It maps a list of statically configured files (via
+ MMapFile
directives in the main server configuration) into
+ memory through the system call mmap()
. Although this system
+ call is not available on every platform, most of the modern Unix derivates
+ provide it. At least those ones conforming to the POSIX.4 definition. The
+ size of the mapable files usually has to be less then 2GB. But this is no
+ real restriction for documents on a webserver.
+
+ This mmap()ing is done once at server start or restart, only. So whenever
+ one of the mapped files changes on the filesystem you have to
+ restart the server by at least sending it a HUP or USR1 signal. To
+ reiterate that point: if the files are modified in place without
+ restarting the server you may end up serving requests that are completely
+ bogus. You should update files by unlinking the old copy and putting a new
+ copy in place. Most tools such as rdist
and mv
do
+ this. The reason why this modules doesn't take care of changes to the files
+ is that this check would need an extra stat()
every time which
+ is a waste and against the intend of I/O reduction.
+
+ Syntax: MMapFile filename ...
+
+ Default: None
+
+ Context: server-config
+
+ Override: Not applicable
+
+ Status: Experimental
+
+ Module: mod_mmap_static
+
+ Compatibility: Only available in Apache 1.3 or later
+
+
+ The MMapFile
directive maps one or more files (given as
+ whitespace separated arguments) into memory at server startup time. They
+ are automatically unmapped on a server shutdown. When the files have changed
+ on the filesystem at least a HUP or USR1 signal should be send to the server
+ to re-mmap them.
+
+ Be careful with the filename arguments: They have to literally
+ match the filesystem path Apache's URL-to-filename translation handlers
+ create. We cannot compare inodes or other stuff to match paths through
+ symbolic links etc. because that again would cost extra stat()
+ system calls which is not acceptable.
+
+ Notice: You cannot use this for speeding up CGI programs or other files + which are served by special content handlers. It can only be used for + regular files which are usually served by the Apache core content handler. +
+ + Example: + ++ MMapFile /usr/local/apache/htdocs/index.html ++ + + + -- 2.40.0