Whenever users press the "Refresh Groups" button, the backend queries Augur for their groups. This consumes a Celery worker slot and is a vector by which Celery / Augur could be overwhelmed.
We should limit this possibility by caching a piece of information about the last time that a user refreshed their groups and short-circuiting the request if they requested recently.
We should also let the user know that they're on a cooldown before they can refresh their groups again.
30 seconds seems reasonable, although maybe 15 would make them feel more in control.
Whenever users press the "Refresh Groups" button, the backend queries Augur for their groups. This consumes a Celery worker slot and is a vector by which Celery / Augur could be overwhelmed.
We should limit this possibility by caching a piece of information about the last time that a user refreshed their groups and short-circuiting the request if they requested recently.
We should also let the user know that they're on a cooldown before they can refresh their groups again.
30 seconds seems reasonable, although maybe 15 would make them feel more in control.