2019-06-15 21:58:44 +02:00
Medium-long term wish list - updated 2019/06/15
2006-06-26 02:48:02 +02:00
2010-05-23 08:46:08 +02:00
Legend: '+' = done, '-' = todo, '*' = done except doc
2006-06-26 02:48:02 +02:00
2019-06-15 21:58:44 +02:00
2.1 or later :
2010-05-23 08:46:08 +02:00
- return-html code xxx [ file "xxx" | text "xxx" ] if <acl>
2006-05-13 13:00:29 +02:00
2010-11-24 16:21:56 +01:00
- return-raw [ file "xxx" | text "xxx" ] if <acl>
2010-11-14 14:23:22 +01:00
- have multi-criteria analysers which subscribe to req flags, rsp flags, and
stream interface changes. This would result in a single analyser to wait
for the end of data transfer in HTTP.
2013-06-17 14:51:38 +02:00
- make it possible to condition a timeout on an ACL (dynamic timeouts)
2010-11-14 14:23:22 +01:00
- forwardfor/originalto except with IPv6
2013-12-17 00:35:27 +01:00
- tcp-request session expect-proxy {L4|L5} if ...
2013-06-17 14:51:38 +02:00
2015-10-13 18:38:15 +02:00
- wait on resource (time, mem, CPU, socket, server's conn, server's rate, ...)
2010-05-23 08:46:08 +02:00
- bandwidth limits
2006-07-09 08:22:27 +02:00
2010-05-23 08:46:08 +02:00
- buddy servers to build defined lists of failovers. Detect loops during
the config check.
server XXX buddy YYY
server YYY # may replace XXX when XXX fails
- spare servers : servers which are used in LB only when a minimum farm
weight threshold is not satisfied anymore. Useful for inter-site LB with
local pref by default.
2010-11-24 16:21:56 +01:00
- add support for event-triggered epoll, and maybe change all events handling
to pass through an event cache to handle temporarily disabled events.
- evaluate the changes required for multi-process+shared mem or multi-thread
+thread-local+fast locking.
2010-05-23 08:46:08 +02:00
2014-06-19 14:49:40 +02:00
Old, maybe obsolete points :
- clarify licence by adding a 'MODULE_LICENCE("GPL")' or something equivalent.
2010-05-23 08:46:08 +02:00
2014-06-19 14:49:40 +02:00
- 3 memory models : failsafe (prealloc), normal (current), optimal (alloc on
demand)
2010-05-23 08:46:08 +02:00
2014-06-19 14:49:40 +02:00
- verify if it would be worth implementing an epoll_ctl_batch() for Linux
2010-05-23 08:46:08 +02:00
2014-06-19 14:49:40 +02:00
- option minservers XXX : activates some spare servers when active servers
are insufficient
2006-07-09 08:22:27 +02:00
2014-06-19 14:49:40 +02:00
- initcwnd parameter for bind sockets : needed in kernel first
2013-06-17 14:51:38 +02:00
2014-06-19 14:49:40 +02:00
- have a callback function which would be called after a server is selected,
for header post-processing. That would be mainly used to remove then add
the server's name or cookie in a header so that the server knows it.
2014-05-10 13:34:32 +02:00
2013-06-17 14:51:38 +02:00
Unsorted :
- internal socket for "server XXX frontend:name"
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- XML inspection (content-switching for SOAP requests)
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- random cookie generator
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- fastcgi to servers
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- hot config reload
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- RHI - BGP
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- telnet/SSH cli
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- dynamic memory allocation
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- dynamic weights based on check response headers and traffic response time
2014-06-19 14:49:40 +02:00
2013-06-17 14:51:38 +02:00
- various kernel-level acceleration (multi-accept, ssplice, epoll2...)