2.7.3 Publishing Engine — Queues, Retries, and Status
The Publishing Engine is responsible for reliable delivery of social posts using asynchronous processing, retries, and clear status tracking.
Queue‑Based Execution
Publishing jobs are dispatched to queues:
PublishSocialPost::dispatch($postId) ->onQueue('social-publishing');This decouples user actions from external API latency.
Retry Strategy
Failures are handled based on error type:
Temporary (network, rate limit) → retry with backoff
Permanent (invalid token, rejected media) → mark as failed
public function retryUntil() { return now()->addMinutes(15); }Status Lifecycle
Each post progresses through explicit states:
draft
scheduled
publishing
published
failed
Status changes are persisted and visible in real time.
Audit Logging
All publish attempts are logged:
Target platform
Timestamp
Result and error payload (if any)
This supports troubleshooting and compliance.
Summary
The publishing engine ensures that social content is delivered reliably, transparently, and safely—even under unstable external conditions.