ftp
5 سال پیش توسط ftp مطرح شد
20 پاسخ

طولانی شدن لود صفحه سایت

@ali.bayat
من سایتی روی سرور بالا آوردم اما زمان لود کردن صفحه طولانی از چه چیزی میتونه باشه و چطوری باید تست کنم


ثبت پرسش جدید
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
1

درود

شما وقتی می‌خواهید سوالی ارسال کنید اگر توضیحات بیشتری بدید ، دوستان بهتر میتونند راهنمایی کنند
الان سوال شما انقدر کلی هست که میتونه جواب های زیادی داشته باشه

مثلا باید حداقل اطلاعات زیر رو هم در متن سوال بذاری

  • چقدر طول میکشه صفحه لود بشه؟
  • آیا کوئری دیتابیس هم دارید؟
  • حجم داده‌ای که از کنترلر به view پاس میدید، چقدره؟
  • چند فایل جاوااسکریپت و از چه آدرس هایی به صفحه ضمیمه شده؟

Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 5 سال پیش مطرح شد
1

سلام
@mehdisut

این سوال رو به سوال های دوستمون هم اضافه کن :
منابع سرور چقدر هست؟

@ali.bayat
ارادت

آقا نحوه سوال پرسیدن این دوستمون ، عین اون دوستمون masoud هست! نه؟ خیلی شبیه ان!
با همون متد .... روزانه 200 تا سوال و ، بدون توضیح :))))))
شمارو با دوستون خانزادی رو هم یه سره تگ میکنن....

جهت فان! :)


ftp
تخصص : ساده
@ftp 5 سال پیش آپدیت شد
0

@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اتفاق میفته


Davood
تخصص : PHP - Laravel
@dfardabasi 5 سال پیش آپدیت شد
0

سلام
@mehdisut

مینی فای کردن اسکریپت ها و فایل های css
فعال کردن gzip
کد کش شدن سایت رو مرورگر که میتونید داخل htaccess قرار بدید
و.....

این ها رو چک کنید و انجام بدید


ftp
تخصص : ساده
@ftp 5 سال پیش آپدیت شد
-1

سلام@Alimotreb

من تازه لاراول رو یاد گرفتم یک ذره میدونم داغم تند تند سوال میپرسم ببخشید


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

@Alimotreb
درود
دقیقا.. :)))


علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

@mehdisut

اگر حلقه ها اطلاعات زیادی رو پردازش کنند ممکنه این اتفاق بیفته.. قبل و بعد قسمت هایی از کد که فکر میکنی باعث این تاخیر میشند، یه سری اطلاعات رو var_dump کن.. اول باید ببینی چی باعث تاخیر میشه و وقتی مشخص شد فکری به حال درست کردنش


ftp
تخصص : ساده
@ftp 5 سال پیش مطرح شد
0

@ali.bayat
این باعث میشه لود سیستم بالا بره ایا جایگزینی براش وجود داره

$channel = \App\DetailsModel::select('link','name_channel')->groupBy('link','name_channel')->whereNotNull('name_channel')->take(5)->inRandomOrder()->get();
        return $channel;

علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

اینجا از الکوئنت استفاده کردی.. به جاش میتونی از کوئری بیلدر هم استفاده کنی اما بعید میدونم فرقی بکنه... برای یک فیلد جدول index قرار بده و نهایتا اگر باز هم فرقی نکنه باید کوئری رو بصورت raw بنویسی


محسن بستان
تخصص : Senior Backend Developer
@mohsenbostan 5 سال پیش مطرح شد
0

@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


ftp
تخصص : ساده
@ftp 5 سال پیش مطرح شد
0

@ali.bayat
@mohsenbostan
باشه ممنون من اینا رو تست کنم بهتون خبر میدم
ممنون که وقت گذاشتید


حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 5 سال پیش آپدیت شد
2

@Alimotreb
همون شخصه، دقیقا با همون الگو سوال میپرسه ! دفعه قبل بخاطر همین روند بلاک شد بعد در تلگرام شروع به فحاشی کرد . همین روند دوباره ادامه پیدا کنه برای هر چیزی که با سرچ ساده تو گوگل میشه بهش رسید دوباره بلاک میشه و دیگه با اکانت جدید هم بیاد اجازه ارسال نخواهد داشت.
البته اومیدوارم مثل یک شخص تازه وارد تذکرها رو جدی بگیرن. چون این موضوع مهمیه


ftp
تخصص : ساده
@ftp 5 سال پیش مطرح شد
0

@hesammousavi
داداش اشتباه گرفتی


حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 5 سال پیش مطرح شد
1

@mehdisut
چه اشتباه چه درست دارم اینجا تذکر میدم. سوالات الکی و بی مورد مثل اینکه map چیست filter چیست مطرح بشه در صورت تکرار مداول بلاک میشید
چون تازه وارد هستید به قول خودتون دارم این تذکر رو میدم امیدوارم که رعایت بفرمایید که بعدا کار به فحاشی نرسه


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 5 سال پیش مطرح شد
1

سلام و ارادت
@hesammousavi

اره واقعا ، خب مشخصه دیگه !
خدایی چقدر سوال داره این دوستمون
سوال پرسیدن هیچ عیب نیست از نظر من ، آدم مشکلی چیزی داره خب نظر بقیه رو هم میپرسه
اما این دوستمون هر خط کدی که میزنه ، نظر بقیه رو میپرسه ، قشنگ دیباگ برنامه رو با دوستان راکتی داره انجام میده :))))))

والا نه من ، نه بقیه دوستان هیچکس در جواب دادن بخیل نیست، هر سوالی که در توان باشه جواب میده آدم ، طوری نیست که !

@mehdisut
برادر شما هم اینقدر مقاومت نکن دیگه!
همه میشناسیمت دیگه!
سوال درست واضح ، با ملاحظه بپرس همه دوستان در خدمتیم ، در برابر پاسخ ها هم مقاومت نشون میدی آخه!
نده داداش ، سال اقتصاد مقاومتی گذشت ، الان رونق تولیده...! رویه رو عوض کن دوست عزیز

دوستان راکتی و این برادر استادمون ، حسام موسوی رو هم اذیت مکن.... :-)


حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 5 سال پیش مطرح شد
1

@Alimotreb
پیر شدم پیر 😂😂


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 5 سال پیش مطرح شد
0

@hesammousavi

سلامت و سر زنده باشی همیشه ایشالا برادر. :-)


ftp
تخصص : ساده
@ftp 5 سال پیش مطرح شد
-1

@hesammousavi ولا من اون فرد نیستم نمیدونم شما چی فکر میکنید شما هم خیلی مقاومت نشون میدید

@ali.bayat
میگم هم rawرو نوشتم و هم query رو تغییر دادم نشد اگه نظری دارید بگید


ftp
تخصص : ساده
@ftp 5 سال پیش آپدیت شد
-1

@ali.bayat
سلام ببخشید میگم امکان داره از query زدن باشه. من با ftpبرای گرفتن عکس به یک سرور دیگه هم وصل میشم امکان داره از این باشه.
میشه یک نگاهی به سایتم کنید اگه میشه آیدی تلگرام بدم


ftp
تخصص : ساده
@ftp 5 سال پیش آپدیت شد
-1

@ali.bayat
@hesammousavi
@khanzadimahdi
من زمانی که این کد های زیر رو اجرا میکنم و سیستم رو خاموش و روشن میکنم سرعت لود تو 1 ثانیه همه رو نشون میده ایا میشه این کدها رو به صورت دستوری نوشت و اجرا کرد

php artisan config:cache
php artisan route:cache
php artisan view:clear

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام