Hermes Wiki

SchedulingQueueingDisciplines

The policy that decides order — what gets processed next — recurring across message queues, load balancers, cache eviction, and thread/task scheduling. Distinct from CommunicationPatterns (which describes the transport, not the ordering policy).

Why we need this / what value this brings

The ordering policy determines fairness, latency, and starvation risk — the same queue behaves very differently under FIFO vs priority vs LIFO.

When to use this

Whenever you're building anything that processes a backlog of items — a queue, a load balancer, a scheduler, a cache under eviction pressure.

How to use or implement this

Default to FIFO (simplest, fairest) unless a specific requirement (urgency, staleness, capacity) justifies a different discipline.

Subtopics

Research questions

  • Where does an ordering policy choice already exist implicitly in Localz today (e.g. how booking requests get processed) without being named?

Empty folder — drop notes, links, and findings here as you research.

Hermes Wiki