Given a processing service with a limited throughput and tasks submitted by users with assigned priorities, what can be used to avoid priorities fights between users willing their tasks to be finished first?
In practice, even with verbose names (i.e. critical
, high
, regular
, background
), there are less responsible users who submit jobs with unnecessary high priorities which are causing all users to use high priorities.
Attempts to require the input of a business justification for using high priorities, or explicitly acknowledge using, or use red-warning indications for critical
didn't improve the situation much.
One thing that can be used is to assign quotas to users or sub-organisation a user belongs to. The disadvantage of that is a need to implement a quota control in the system and overhead for people responsible for assigning priorities.
It's an open-ended question, and it will be interesting to hear ideas.