A growing or stuck replication queue between AEM author and publish instances is one of those problems that looks alarming on the dashboard but usually has a small, findable cause.
Start with the queue error, not the symptom
The AEM replication agent console (under Tools > Replication > Agents on Author) shows the last error for a blocked queue. Read this before assuming a network or infrastructure problem — the message is often specific: a locked node, an authentication failure, or a publish instance rejecting a payload.
Common root causes
- Publish instance authentication changes: a rotated technical user password or expired token on the agent configuration will block the entire queue behind it
- Content that fails validation on publish: a single malformed package or a node with a broken reference can block everything queued behind it if the agent processes serially
- Publish instance resource exhaustion: a publish tier running low on heap or disk will start rejecting replication payloads, which shows up as queue growth rather than an obvious publish-side alert
- Network or load balancer timeouts: large asset replication payloads timing out at an intermediate proxy will retry and re-queue rather than failing cleanly
Diagnostic steps
- Check the specific error on the blocked agent, not just "queue is growing"
- Identify the oldest blocked item — it is very often the actual root cause, with everything after it just waiting in line
- Check publish instance health (heap, disk, error log) independently of the queue itself
- If the blocking item is a single problematic package, consider removing just that item from the queue rather than clearing the entire queue, which would also drop legitimate pending changes
Prevention
Set up monitoring on queue depth and age of the oldest queued item, not just a binary "queue exists" alert. A queue with five items that are ten seconds old is healthy; a queue with five items that are three hours old is not, even though both look similar in a basic status check.