Actions
Todo » History » Revision 50
« Previous |
Revision 50/63
(diff)
| Next »
presbrey, 2010-09-22 23:25
small todo list¶
Note: this list is updated every now and then and doesn't necessarily represent the exact state of development. Use it as a rough overview.
- not thread-safe config handling (setups are only allowed in startup mode and don't need to be thread-safe)
- review
- core
- out-of-fd handling should be (only) in the main worker
- throttling by ip
- X-Throttle ?
- limit request/response header size, request url length
- option for directory of upload tempfiles
- wait for listen-sockets from angel from LOADING -> SUSPENDED
- angel
- log rotation (or use the zero downtime restart?)
- control socket interface
- angel-control util
- log
- scheme:// prefix
- support for pipes
- open log files with angel
- print "startup" (== if logging is disabled) log messages to stderr/angel if the log level target isn't /dev/null
- plugin api
- inter-plugin api
- plugin data per client ip address
- can be used for bandwidth throttling, limit requests per second, limit concurrent requests etc
- has to be shared among all workers so locking needed?
- maybe let main worker do the lookup/removal in a radix tree so no locking needed for that and let plugin make sure it's threadsafe when modifying
- modules
- port remaining modules from 1.x
- mod_extforward
- mod_ssi ?
- mod_ajp13 ?
- mod_trigger_b4_dl ?
- mod_usertrack ?
- mod_(web)dav ?
- new concept for:
- mod_{my,pg}sql_vhost (load complete config instead of just doc-root)
- mod_rrdtool
- sql vhost (lua handler go generate actions from db rows?)
- mod_auth_dovecot
- add even more innovative modules :)
- port remaining modules from 1.x
- mod_auth
- digest authentication
- mod_status
- show timeout in duration column like "5/120" ?
- mod_dirlist
- generate stat dirlist/html body async (to allow etag-cache-hit)
- mod_openssl
- sni support
- lookup in hashtable
- dynamic lookup? files via patterns, lua callback, ...
- user certs?
- fix async handling
- sni support
- mod_deflate
- add some options: buffer size, minimum-file-size, compression parameters, select allowed methods
- add "force" modus to enforce a specific compression method
- add "enflate" or "fix compression" action to deflate the content if the client doesn't understand the current encoding
The idea behind this would be something like this:memcached.lookup ( ..., ${ deflate.fix; deflate; }, ${ php; deflate.enforce "bzip2"; memcache.store ...; deflate.fix; deflate; };
- mod_fastcgi
- keep-alive connections
- mod_memcache
- store http headers, so we can cache deflated content too
- mod_proxy
- make HTTP/1.1 downstream requests
- stat-cache:
- revalidate dirlist entries with stat() after cache hit ?
- purge invalid entries (stat()/open() failed), i.e. remove from hash tables
- check for normal stat entry, stat() and S_ISDIR before queuing dirlist job
- reset ttl after revalidating entries
- limit for hash tables?
- check symlink/symlink-if-owner-match
- test framework
- build systems
- at least one build system should provide static builds
Updated by presbrey about 14 years ago · 50 revisions