You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As a Jupyter hub administrator, I want to configure and enforce resource throttling (CPU, memory, and request rate) on a per-user basis across individual Jupyter hubs, So that I can prevent any single user from monopolizing shared resources #17
GIVEN a Jupyter hub administrator needs to control resource usage WHEN throttling is configured for a hub THEN CPU, memory, network, and request rate limits can be set per user or user group independently on each hub.
GIVEN a user exceeds their configured throttle limit WHEN the limit is breached THEN the user receives a clear in-app notification and a descriptive error message explaining the restriction.
GIVEN throttling rules are defined for a hub WHEN the hub or user server restarts THEN all throttling configurations are automatically reloaded and enforced without manual intervention.
GIVEN multiple hubs are running WHEN throttling is configured on one hub THEN the configuration has no effect on any other hub, ensuring per-hub isolation.
Technical Tasks
Research how to implement CPU and memory throttling for user servers in JupyterHub
Define appropriate throttling limits for CPU, memory, and network traffic for different user roles (Instructor/student)
Implement CPU and memory limits on users according to specified configurations
Determine how to show the user a throttle warning
Implement the throttle warning when a user excceeds limitations
Ensure throttling rules persist across hub restarts and are correctly re-applied when a user restarts their server
Test throttling using testing scripts to ensure that limits are being properly enforced and do not over-limit users under normal load
Acceptance Criteria
Technical Tasks
Story points: 13