@dansup You might want to make your polling of upstream dynamically periodic. If a given upstream hits you too hard, lower the frequency of updates. If the upstream has a low volume, you can safely hit them more often.
Think of it like a PID for network backpressure.