-APACHE 2.x ROADMAP:
+APACHE 2.x ROADMAP
+==================
+Last modified at [$Date$]
-Last modified at [$Date: 2002/10/01 19:13:06 $]
-DEFERRRED FOR APACHE 2.1
+WORKS IN PROGRESS
+-----------------
* Source code should follow style guidelines.
OK, we all agree pretty code is good. Probably best to clean this
dislike a bit within that doc, bring it up on the dev@httpd
list prior to the next branch.
-
-WORKS IN PROGRESS (PERHAPS DEFERRED FOR 2.1 or 3.0)
-
- * revamp the input filter syntax to provide for ordering of
- filters created with the Set{Input|Output}Filter and the
- Add{Input|Output}Filter directives. A 'relative to filterx'
- syntax is definately preferable.
-
- * Platforms that do not support fork (primarily Win32 and AS/400)
- Architect start-up code that avoids initializing all the modules
- in the parent process on platforms that do not support fork.
-
- . Better yet - not only inform the startup of which phase it's in,
- but allow the parent 'process' to initialize shared memory, etc,
- and create a module-by-module stream to pass to the child, so the
- parent can actually arbitrate the important stuff.
+ So Bill sums up ... let's get the code cleaned up in CVS head.
+ Remember, it just takes cvs diff -b (that is, --ignore-space-change)
+ to see the code changes and ignore that cruft. Get editing Justin :)
* Replace stat [deferred open] with open/fstat in directory_walk.
Justin, Ian, OtherBill all interested in this. Implies setting up
available for the life of the request, so a complete
async implementation would need to happen 3.0 release.
- * Add a string "class" that combines a char* with a length
- and a reference count. This will help reduce the number
- of strlen and strdup operations during request processing.
- Including both the length and allocation will save us a ton
- of reallocation we do today, in terms of string manipulation.
-
- OtherBill asks if this is really an APR issue, not an HTTPD issue?
+ Brian notes that async writes will provide a bigger
+ scalability win than async reads for most servers.
+ We may want to try a hybrid sync-read/async-write MPM
+ as a next step. This should be relatively easy to
+ build: start with the current worker or leader/followers
+ model, but hand off each response brigade to a "completion
+ thread" that multiplexes writes on many connections, so
+ that the worker thread doesn't have to wait around for
+ the sendfile to complete.
MAKING APACHE REPOSITORY-AGNOSTIC
than calling apr_dir_open/read/close(), a caller uses
resource->repos->get_children() or somesuch.
- Note that things like mod_dir, mod_autoindex, and mod_negotation
+ Note that things like mod_dir, mod_autoindex, and mod_negotiation
need to be converted to use these mechanisms so that their
functions will work on logical repositories rather than just
filesystems.