DEV Community

Cover image for The Right Way to Handle AI API Timeouts in Laravel
Aasim Ghaffar
Aasim Ghaffar

Posted on

The Right Way to Handle AI API Timeouts in Laravel

When integrating third-party AI or LLM APIs into your application, running them synchronously inside your standard web controllers is an architectural trap. If the external API takes 10+ seconds to respond, your server's worker pool can exhaust its memory constraints rapidly.

To solve this, you must shift external execution tracks into decoupled, asynchronous background processes. Here is a lean, production-ready Laravel Job setup designed to safely handle external API latency:

namespace App\Jobs;

use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;

class ProcessAIPipeline implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable;

// Retry settings to survive external API timeouts safely
public $tries = 3;
public $backoff = [15, 45, 90];

protected array $data;

public function __construct(array $data)
{
    $this->data = $data;
}

public function handle(AIEngineService $ai): void
{
    // Off-thread processing protects your application core
    $response = $ai->generate($this->data['prompt']);
}
Enter fullscreen mode Exit fullscreen mode

}

Key Architectural Advantages:
Immediate Client Release: Your controller handles rapid validation, dispatches the job, and instantly returns an HTTP 202 Accepted status to the client application.

Exponential Backoff Protection: If the AI provider hits a rate limit or unexpected downtime, your worker handles retries gracefully (15s, 45s, 90s) instead of throwing unhandled 500 errors.

Decoupled Extensibility: By shifting this logic off the HTTP thread, you can easily wrap this implementation into reusable, open-source vendor tools.

By building decoupled pipelines, you protect your infrastructure from connection timeouts and keep your core ecosystem incredibly resilient.

I’m a Software Engineer & Data Scientist (MSc) with 9+ years of experience specializing in high-concurrency Laravel systems and open-source utility design.

Top comments (0)