The following future potential feature would help me use haproxy more for an upcoming project. I apologize if this is already addressed through existing features or not considered generally useful.
Implement new type of health checks, call them "configuration checks". A configuration check would operate just like HTTP health checks except that purpose of the request is to allow a backend server to reconfigure how HAProxy perceives and utilizes the server by returning special text responses. Dynamic configuration changes supported could include: 1. Setting new interval time for subsequent configuration checks to the server. 2. Setting new maxconn or weight for the server (allowing backend to "throttle" or "increase" load for itself). 3. Setting server state (DOWN, MAINTENANCE, UP, STARTING, STOPPING, DAMAGED) changing how HAProxy treats existing connections or new connections for the server. 4. Change server from active to backup (or vice versa). 4. Adding new server to backend by having configuration check return new server configuration. 5. Changing any other useful settings that affect backend servers. It would be nice if HAProxy provided a complete set of configuration data (including performance data) for all servers in the backend as an option for the configuration request (so, decisions can be made in the backend like downing itself because the server has the lowest load and the other servers have lots of spare capacity). I believe these changes will really help deployments to the cloud. And, it doesn't rely on having a separate management console which might crash or be unable to connect to one or more servers due to networking issues. The backend servers can be responsible for managing themselves.

