@ali.bayat
من سایتی روی سرور بالا آوردم اما زمان لود کردن صفحه طولانی از چه چیزی میتونه باشه و چطوری باید تست کنم
درود
شما وقتی میخواهید سوالی ارسال کنید اگر توضیحات بیشتری بدید ، دوستان بهتر میتونند راهنمایی کنند
الان سوال شما انقدر کلی هست که میتونه جواب های زیادی داشته باشه
مثلا باید حداقل اطلاعات زیر رو هم در متن سوال بذاری
سلام
@mehdisut
این سوال رو به سوال های دوستمون هم اضافه کن :
منابع سرور چقدر هست؟
@ali.bayat
ارادت
آقا نحوه سوال پرسیدن این دوستمون ، عین اون دوستمون masoud هست! نه؟ خیلی شبیه ان!
با همون متد .... روزانه 200 تا سوال و ، بدون توضیح :))))))
شمارو با دوستون خانزادی رو هم یه سره تگ میکنن....
جهت فان! :)
@ali.bayat
چقدر طول میکشه صفحه لود بشه?دقیقا 1 دقیقه
آیا کوئری دیتابیس هم دارید؟بله مسیر عکس ها در دیتابیس هست و با این دستور از دیتابیس اطلاعات میگیرم
$channel = \App\DetailsModel::select('link','name_channel')->groupBy('link','name_channel')->whereNotNull('name_channel')->take(5)->inRandomOrder()->get();
حجم دادهای که از کنترلر به view پاس میدید، چقدره؟12مگابایت (عکس هست) اما کش نکردم یعنی اینکه داخل کش ذخیره نکردم
چند فایل جاوااسکریپت و از چه آدرس هایی به صفحه ضمیمه شده؟اینها فایل جاوا اسکریپت هستند
<script src="<?= Url('src/vendors/jquery/jquery.min.js');?>"></script>
<script src="<?= Url('src/vendors/video-js/video.js');?>"></script>
<script src="<?= Url('src/vendors/bootstrap/js/bootstrap.bundle.js');?>"></script>
<script src="<?= Url('src/vendors/bootstrap/js/bootstrap.js');?>"></script>
<script src="<?= Url('src/vendors/owl.carousel/js/owl.carousel.min.js');?>"></script>
<script src="<?= Url('src/vendors/select2/select2.min.js');?>"></script>
<script src="<?= Url('src/vendors/tagsinput/bootstrap-tagsinput.min.js');?>"></script>
<script src="<?= Url('src/vendors/jquery-ui/jquery-ui.js');?>"></script>
<!-- General JS script-->
<script src="<?= Url('src/js/main.js');?>"></script>
یک نکته:من یکسری کد های php در داخل viewنوشتم امکان داره بالا رفتن لود سایت از این باشه
این فایل های جاوا اسکریپت رو من در پایین صفحه نوشتم بالای صفحه قرار ندادم امکان داره از اونم باشه درسته؟
تمام این فایل ها در public_htmlهستند
منابع سرور هم بالاس
من از پشتیبانی سوال پرسیدم میگه شاید تو دستوراتون loopاتفاق میفته
اگر حلقه ها اطلاعات زیادی رو پردازش کنند ممکنه این اتفاق بیفته.. قبل و بعد قسمت هایی از کد که فکر میکنی باعث این تاخیر میشند، یه سری اطلاعات رو var_dump کن.. اول باید ببینی چی باعث تاخیر میشه و وقتی مشخص شد فکری به حال درست کردنش
@ali.bayat
این باعث میشه لود سیستم بالا بره ایا جایگزینی براش وجود داره
$channel = \App\DetailsModel::select('link','name_channel')->groupBy('link','name_channel')->whereNotNull('name_channel')->take(5)->inRandomOrder()->get();
return $channel;
اینجا از الکوئنت استفاده کردی.. به جاش میتونی از کوئری بیلدر هم استفاده کنی اما بعید میدونم فرقی بکنه... برای یک فیلد جدول index قرار بده و نهایتا اگر باز هم فرقی نکنه باید کوئری رو بصورت raw بنویسی
@mehdisut
سلام. شما راه های متفاوتی برای افزایش سرعت دارید.
در اولین مرحله اگر داده های خیلی زیادی داره از دیتابیس هندل میشه پیشنهاد میکنم حتما از ویژگی Lazy Collection استفاده کنید. که لینک آموزشش هم زیر گذاشتم براتون !
قدم بعدی درمورد فایل های js و css هست. با استفاده از ویژگی laravel mix همه فایل هی css رو در فایل resources/sass/app.scss ایمپورت کنید همچنین این کار رو با فایل های js در resources/js/app.js هم بکنید. در اصل با استفاده از وب پک همه اون فایل ها به دو فایل یکی css و یکی js تبدیل میشه. بعد فقط نیازه که به جای اون همه فایل فقط دو فایل لود بشه!
قدم بعدی مربوط به یکسری کش کردن ها هستش که خیلی میتونه سرعت سایت رو افزایش بده از دستورات زیر حتما استفاده کنید.
php artisan optimize --force
***
php artisan config:cache
***
php artisan route:cache
***
composer dumpautoload -o
***
npm run production
پ.ن: لینک آموزش های مربوط به Lazy Collection :
کار با Lazy Collection - آشنایی با PHP Generate
کار با Lazy Collection
@ali.bayat
@mohsenbostan
باشه ممنون من اینا رو تست کنم بهتون خبر میدم
ممنون که وقت گذاشتید
@Alimotreb
همون شخصه، دقیقا با همون الگو سوال میپرسه ! دفعه قبل بخاطر همین روند بلاک شد بعد در تلگرام شروع به فحاشی کرد . همین روند دوباره ادامه پیدا کنه برای هر چیزی که با سرچ ساده تو گوگل میشه بهش رسید دوباره بلاک میشه و دیگه با اکانت جدید هم بیاد اجازه ارسال نخواهد داشت.
البته اومیدوارم مثل یک شخص تازه وارد تذکرها رو جدی بگیرن. چون این موضوع مهمیه
@mehdisut
چه اشتباه چه درست دارم اینجا تذکر میدم. سوالات الکی و بی مورد مثل اینکه map چیست filter چیست مطرح بشه در صورت تکرار مداول بلاک میشید
چون تازه وارد هستید به قول خودتون دارم این تذکر رو میدم امیدوارم که رعایت بفرمایید که بعدا کار به فحاشی نرسه
سلام و ارادت
@hesammousavi
اره واقعا ، خب مشخصه دیگه !
خدایی چقدر سوال داره این دوستمون
سوال پرسیدن هیچ عیب نیست از نظر من ، آدم مشکلی چیزی داره خب نظر بقیه رو هم میپرسه
اما این دوستمون هر خط کدی که میزنه ، نظر بقیه رو میپرسه ، قشنگ دیباگ برنامه رو با دوستان راکتی داره انجام میده :))))))
والا نه من ، نه بقیه دوستان هیچکس در جواب دادن بخیل نیست، هر سوالی که در توان باشه جواب میده آدم ، طوری نیست که !
@mehdisut
برادر شما هم اینقدر مقاومت نکن دیگه!
همه میشناسیمت دیگه!
سوال درست واضح ، با ملاحظه بپرس همه دوستان در خدمتیم ، در برابر پاسخ ها هم مقاومت نشون میدی آخه!
نده داداش ، سال اقتصاد مقاومتی گذشت ، الان رونق تولیده...! رویه رو عوض کن دوست عزیز
دوستان راکتی و این برادر استادمون ، حسام موسوی رو هم اذیت مکن.... :-)
@hesammousavi ولا من اون فرد نیستم نمیدونم شما چی فکر میکنید شما هم خیلی مقاومت نشون میدید
@ali.bayat
میگم هم rawرو نوشتم و هم query رو تغییر دادم نشد اگه نظری دارید بگید
@ali.bayat
سلام ببخشید میگم امکان داره از query زدن باشه. من با ftpبرای گرفتن عکس به یک سرور دیگه هم وصل میشم امکان داره از این باشه.
میشه یک نگاهی به سایتم کنید اگه میشه آیدی تلگرام بدم
@ali.bayat
@hesammousavi
@khanzadimahdi
من زمانی که این کد های زیر رو اجرا میکنم و سیستم رو خاموش و روشن میکنم سرعت لود تو 1 ثانیه همه رو نشون میده ایا میشه این کدها رو به صورت دستوری نوشت و اجرا کرد
php artisan config:cache
php artisan route:cache
php artisan view:clear
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟