Project

General

Profile

Todo » History » Revision 4

Revision 3 (icy, 2008-11-11 19:33) → Revision 4/63 (icy, 2008-12-11 00:08)

h1. small todo list 

 * workers 
 ** out-of-fd handling should be (only) in the main worker 
 * parse ip:port for core_listen and perhaps some other places (conditional matching against socket, i.e. ip and port) 

 * implement stat-caching with extra threads 
 * think about [[VirtualRequests]] 
 * add per action+connection specific data to save the state after wait_for_x 
 * add per plugin+virtual-request specific data 
 * accesslog 
 * physical.* conditionals 
 * regexp support 
 * ipv6 support 

 * angel 
 ** zero downtime restarts 
 ** fd passing 
 ** backend spawning with different uid/gid 
 ** log rotation (or use the zero downtime restart?) 

 * throttling 
 ** each connection gets a "magazine" that represents the amount of bytes it can send at the moment 
 ** when sending data, decrease the magazine 
 ** if magazine reaches 0, remove EV_WRITE for the sockwatcher and put connection at the end of the throttling queue 
 ** each N milliseconds (maybe 500, configure via setup?), check if there are waiting connections in the queue and rearm if waiting for > N ms 
 ** when rearming a connection, add number of allowed bytes to the magazine and set EV_WRITE again 

 * log 
 ** scheme:// prefix 
 ** write logs directly out in startup phase 

 * implement better counter_format(): allow output like "10 961 KiB"