Voiceware: Background Work · deep-dive
What the celery -A pbx Command Reveals About Runtime Ownership
How the worker command ties infrastructure configuration to an application module.
Here is the simplest way I explain how the worker command ties infrastructure configuration to an application module.
The analogy
producer -> queue/broker -> worker class -> task execution -> side effect
How it appeared in Voiceware
For celery-low, I ran Celery with -A pbx and let the chart choose Beat or worker mode.
Why it matters
Infrastructure is never fully independent from application semantics; the deployment layer must know the correct executable and module entrypoint.
A concrete way to reason about it
If the signals queue depth, oldest-job age, task execution time, worker availability, retry/error rate agree with the expected flow, I can move to application-specific behavior. If they disagree, I stay at the infrastructure boundary until the mismatch is understood.
Practical test
- Test process commands exactly as rendered in the pod spec.
- Measure queue wait separately from execution time.
- Confirm workers consume the intended queue.
- Scale from workload pressure, not CPU alone.
- Keep scheduler semantics separate from worker semantics.
The short version is Treat process commands as versioned application contracts, not random shell strings embedded in YAML. The goal is not more Kubernetes. The goal is less ambiguity.