Laravel Lazy Collections: procesar 500k rows sin explotar memoria.

15 May 2026 · 4 min · TIL

Encontré el límite de Eloquent migrando datasets grandes. User::all() cargaba todo en memoria y PHP reventaba. La solución fue cursor() + LazyCollection para procesar en streaming — la memoria se mantuvo constante sin importar el volumen.

// ❌ explota con 500k rows
$users = User::all();
foreach ($users as $user) {
    $this->processUser($user);
}

// ✓ streaming con cursor() — memoria constante
User::query()->cursor()->each(function (User $user) {
    $this->processUser($user);
});
Afiliado
Curado por José Luis Luna Rubio

Acelera tu perfil
técnico con
Platzi

Más de 240 cursos y 48 carreras para fortalecer desarrollo, producto, diseño y habilidades digitales con una ruta estructurada.

  • Rutas por carrera
  • Aprendizaje práctico
  • Formación continua
240+ Cursos
48 Carreras
1mes Gratis
Obtener 1 mes gratis

Enlace de afiliado — si entras desde aquí,
apoyas este sitio sin costo extra para ti.