Cluster.set_max_requests_per_connection sets a threshold above which new connections will be created to a host (up to max_connections_per_host).
Cluster.set_min_requests_per_connection sets a threshold below which connections will be considered for disposal (down to core_connections_per_host).
There is also a fixed time window around disposing connections to introduce hysteresis and avoid connection thrashing.
Also see if there are more missing features
Ran it by Alex for review.