You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by pq...@apache.org on 2007/02/18 21:43:32 UTC
svn commit: r508987 - /httpd/sandbox/amsterdam/ROADMAP
Author: pquerna
Date: Sun Feb 18 12:43:31 2007
New Revision: 508987
URL: http://svn.apache.org/viewvc?view=rev&rev=508987
Log:
Add an initial discussion file for Amsterdamn. This is based off of my '3.0 - Proposed Goals' email, but with some things tossed out and other distilled into shorter terms.
Added:
httpd/sandbox/amsterdam/ROADMAP
Added: httpd/sandbox/amsterdam/ROADMAP
URL: http://svn.apache.org/viewvc/httpd/sandbox/amsterdam/ROADMAP?view=auto&rev=508987
==============================================================================
--- httpd/sandbox/amsterdam/ROADMAP (added)
+++ httpd/sandbox/amsterdam/ROADMAP Sun Feb 18 12:43:31 2007
@@ -0,0 +1,56 @@
+APACHE AMSTERDAMN ROADMAP: -*-text-*-
+
+ROADMAP DISCUSSION POINTS:
+
+ * Async IO Core, including a generic Event Loop, allowing modules and
+ protocols to register new events and when to be notified.
+
+
+ * Use Serf (and its Bucket/Bridage system) as the starting point
+ for making filters, buckets and brigades work with the Async Core.
+
+
+ * Break the 1:1 mapping of a worker to a single request.
+
+
+ * Investigate using Syslets for functions like stat():
+ http://lkml.org/lkml/2007/2/13/142
+
+
+ * Refactor MPMs to split platform specific needs from the process
+ and thread models. A reasonable goal is to have one thread model
+ that runs on both unix and winnt.
+
+
+ * Include support for Waka, once an RFC/more details are available.
+
+
+ * Build a cleaner configuration system based on an Object Model,
+ rather than a file/specific directives.
+
+
+ * Investigate using small scripting languages for complicated user
+ configurable things, including Caching Rules, Rewrite Rules, and
+ AAA/Require Rules. Look at Varnish's VCL or lighttpd's mod_magnet
+ for interesting examples:
+ <http://phk.freebsd.dk/pubs/varnish_tech.pdf>
+ <http://trac.lighttpd.net/trac/wiki/Docs:ModMagnet>
+
+
+ * Investigate providing a higher level module API, which hides the
+ complexity of an async core. Basically, a 'simple world view' for those
+ that want to write a simple generator.
+
+
+ * Promote and include a external-process communication method in the
+ core. This could be used to communicate with PHP, a JVM, Ruby or many
+ other things that do not wish to be run inside a highly-threaded and
+ async core. We should optionally include a process management framework,
+ to spawn these as needed, to make configuration for server administrators
+ easier.
+
+
+ * Provide a generic IPC or Scoreboard mechinishm with an easy to use API
+ for modules and the core.
+
+