نمونه کد:
$orders = Order::all();
برای ۵۰ سفارش؟
مشکلی ندارد.
اما برای ۵ میلیون سفارش؟
❌ مصرف شدید حافظه
❌ احتمال Timeout
❌ کند شدن سرور
راه حرفهای:
Order::chunkById(1000, function ($orders) {
foreach ($orders as $order) {
// Process...
}
});چرا ()chunkById ؟
زیرا اگر همزمان دادههای جدید ثبت شوند، نسبت به ()chunk پایدارتر عمل میکند و رکوردها را از قلم نمیاندازد.
---
🎯 کدی که در محیط توسعه خوب کار میکند، الزاماً برای Production مناسب نیست.
💡 همیشه از خودت بپرس: «اگر دادهها ۱۰۰ برابر شوند، این کد هنوز قابل اعتماد است؟»
@CodeVerse_dev