سلام / میخوام از اطلاعات دیتابیس خروجی اکسل بگیرم و یه سری سرچ هم انجام میشه / یعنی داخل کنترلر روی مدل یه سری سرچ انجام میشه روی جدول / جدول هم رکورد هاش 176332
حالا داخل پکیج laravel-excel که جا های مختلف معرفی شده ابتدا میاد اطلاعات رو get() میکنه که با این حالت و این حجم سرور هنگ میکنه و ارور میده....ممنون میشم راهی معرفی کنید
و اگر تجربه ای دارید بفرمایید
@ali.bayat
@hesammousavi
@
@mohsenbostan
به چه شکل ؟ یعنی چنتا خروجی داشته باشم ؟ یا ؟خب بزارم توی صف و...؟ممنون میشم راهنمایی کنید
@milad.pc.tajare
کار رو انتقال بدید به صف ها تا به ترتیب و در پس زمینه انجام بشن.
https://laravel.com/docs/8.x/queues
@milad.pc.tajare
معمولا داخل داکیومنت خود پروژه ها برای اینجور موارد توضیحات وجود داره.
https://docs.laravel-excel.com/3.1/exports/queued.html
داخل لینک بالا که داکیومنت خود لاراول اکسل هست نوشته که اگر با مقدار زیادی داده میخواهید کار کنید بهتره که از صف استفاده کنید و روش استفاده هم گفته شده اونجا
خودش گفته که توی این روش میاد و کوئری که میخواد انجام بده رو به چند قسمت و چند جاب مختلف میشکنه و این جاب ها را یکی یکی ران میکنه تا در نهایت فایل خروجی را براتون بسازه
علاوه بر پاسخ دوستان که پیشنهاد به استفاده از Queue هاست، یکبار پکیج box/spout رو هم امتحان کنید. چون یکم تفاوت داره منطق کاریش و به ادعای خودش برای تعداد رکوردهای زیاد به شکل بهینه طراحی شده. چه بسا نیازی به Queue هم نباشه با این پکیج.
من خودم هم مدت زیادی هست که از این پکیج بیشتر استفاده میکنم و در مقایسه با laravel/excel به نظرم سرعت بیشتری داره. هم برای import و هم export اکسل. بیشتر هم در مواقعی که با رکوردهای زیادی سر و کار دارم.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟