When processing RPC requests, a node may request the caller to slow down by giving an HTTP 429 response.
evmconnect does not seem to handle this response properly. The correct behavior would be to pause all RPC requests for some amount of time. If the response specifies a Retry-After header, than that should be respected, but otherwise a random delay (of a few seconds) can be selected.
Currently, evmconnect has a pretty aggressive retry behavior - so it continues to hammer the node even while receiving multiple HTTP 429 responses (which makes the situation worse and can result in being blocked from making further requests).
When processing RPC requests, a node may request the caller to slow down by giving an HTTP 429 response.
evmconnect does not seem to handle this response properly. The correct behavior would be to pause all RPC requests for some amount of time. If the response specifies a
Retry-Afterheader, than that should be respected, but otherwise a random delay (of a few seconds) can be selected.Currently, evmconnect has a pretty aggressive retry behavior - so it continues to hammer the node even while receiving multiple HTTP 429 responses (which makes the situation worse and can result in being blocked from making further requests).