]> granicus.if.org Git - apache/blobdiff - ROADMAP
fix references
[apache] / ROADMAP
diff --git a/ROADMAP b/ROADMAP
index b7ad575dcd51ddf83444429fb12ba9e960d7fcd5..a76c20a038ffb8fb337f7eb067df24c5b205b9de 100644 (file)
--- a/ROADMAP
+++ b/ROADMAP
@@ -1,8 +1,10 @@
-APACHE 2.x ROADMAP:
+APACHE 2.x ROADMAP
+==================
+Last modified at [$Date: 2002/10/28 07:37:29 $]
 
-Last modified at [$Date: 2002/10/01 16:51:10 $]
 
-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
@@ -26,8 +28,9 @@ DEFERRRED FOR APACHE 2.1
           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)
+      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 :)
 
     * revamp the input filter syntax to provide for ordering of
       filters created with the Set{Input|Output}Filter and the
@@ -65,6 +68,16 @@ WORKS IN PROGRESS (PERHAPS DEFERRED FOR 2.1 or 3.0)
            available for the life of the request, so a complete 
            async implementation would need to happen 3.0 release.
 
+        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.
+
     * 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.
@@ -73,6 +86,11 @@ WORKS IN PROGRESS (PERHAPS DEFERRED FOR 2.1 or 3.0)
 
         OtherBill asks if this is really an APR issue, not an HTTPD issue?
 
+        Brian notes that the performance optimization work in 2.0
+        has all but eliminated the original motiviation for this
+        idea.  The httpd doesn't spend that much time in strlen
+        calls any more.
+
 
 MAKING APACHE REPOSITORY-AGNOSTIC
 (or: remove knowledge of the filesystem)
@@ -113,7 +131,15 @@ MAKING APACHE REPOSITORY-AGNOSTIC
               should get fully resolved. None of this "resolve to
               <here> and then we have a magical second resolution
               (inside the CGI script)" or somesuch.
-    
+   
+      Justin: Well, let's consider mod_mbox for a second.  It is sort of
+              a virtual filesystem in its own right - as it introduces
+              it's own notion of a URI space, but it is intrinsically
+              tied to the filesystem to do the lookups.  But, for the
+              portion that isn't resolved on the file system, it has
+              its own addressing scheme.  Do we need the ability to
+              layer resolution?
+
     * The translate_name hook goes away
 
       Wrowe altogether disagrees.  translate_name today even operates
@@ -140,7 +166,9 @@ MAKING APACHE REPOSITORY-AGNOSTIC
       should be exposed, from the core, for other file-based stores to 
       share. Consider an archive store where the layers become 
       <Directory path> -> <Archive store> -> <File name>
-    
+   
+      Justin: How do we map Directory entries to Locations?
     * The "Location tree" is an in-memory representation of the URL
       namespace. Nodes of the tree have configuration specific to that
       location in the namespace.
@@ -216,3 +244,13 @@ MAKING APACHE REPOSITORY-AGNOSTIC
               it? eeewwwww...
               
               I'll vote -0.9 for CGIs as a filter. Keep 'em handlers.
+
+      Justin: So, do we give up executing CGIs from virtual repositories?
+              That seems like a sad tradeoff to make.  I'd like to have
+              my CGI scripts under DAV (SVN) control.
+
+    * How do we handle overlaying of Location and Directory entries?
+      Right now, we have a problem when /cgi-bin/ is ScriptAlias'd and
+      mod_dav has control over /.  Some people believe that /cgi-bin/
+      shouldn't be under DAV control, while others do believe it
+      should be.  What's the right strategy?