1masoud
6 سال پیش توسط 1masoud مطرح شد
11 پاسخ

ارور 503 Service Unavailable

من زمانی که اطلاعات زیادی زو از هاست(دیتابیس) می خوام بگیرم این ارور داده میشه چیکار کنم ؟
۵۰۳ Service Unavailable


ثبت پرسش جدید
Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 6 سال پیش آپدیت شد
0

سلام
@masoudproton

چون احتمالا کار زیادی هست و تایم زیادی میبره حجم بالاست
mod security سرورشون دسترسی شمارو میبنده و 503 میگیرید
کار زیاد خاصی نمیتونید کنید !
حجم کاری و تایم پراکسس رو در اون کاری که میخواید کنید ، بیارید پایین و بهینه کنید تا بتونید عملیات مورد نظرتون رو انجام بدید


1masoud
تخصص : php,laravel
@masoudproton 6 سال پیش مطرح شد
0

@Alimotreb

تایم پراکسس چیه و چطوری میشه انجامش داد
و آیا میشه ما از sleep استفاده کنیم بگیم هر ۱۰ تا کاری که انجام میده یک وقفه ایجاد کن و بعد برو سراغ ۱۰ تای دیگه
من یک ربات ساختم که باید بره و اطلاعات رو از سایتهای مختلف بخونه نمیشه که قطع کنیم بلاخره راهی وجود داره؟


1masoud
تخصص : php,laravel
@masoudproton 6 سال پیش مطرح شد
Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 6 سال پیش مطرح شد
0

سلام مجدد
@masoudproton

خیر اون اسلیپ وقفه سمت کاربر میندازه
تو پردازش و پراسس تاثیری نداره
تنها کاری که میتونید کنید اینه که کد رو بهینه بنویسید و تایم پراسس رو با نحوه نوشتن طوری هندل کنید که کمترین زمان رو برای پردازش به کار ببره!
اگر نتونستید باید سرور بگیرید
مقدار execution time رو روی یه مقدار زیاد بزارید که هر کاری دلتون میخواد انجام بدید
روی هاست های اشتراکی محدودیت ها زیاده و نمیتونید از این فعالیت ها انجام بدید.


1masoud
تخصص : php,laravel
@masoudproton 6 سال پیش آپدیت شد
0

@Alimotreb
set_time_limit() از این هم نمیشه استفاده کرد
سرور من اشتراکی نیست
مقدارexecution time رو چطوری در کدم اضافه کنم


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

سلام
@masoudproton

از set_time_limit() استفاده نکنید چون ربطی به ماجرای شما نداره .
زمان پردازش رو باید زیاد کنید
فایل php.ini سرور رو باز میکنید
مقدار max execution time رو روی هر چی هست افزایشش میدید!


1masoud
تخصص : php,laravel
@masoudproton 6 سال پیش آپدیت شد
0

@Alimotreb
به صورت کد نمیشهmax execution time نوشت lنظورم اینجوریه ini_set('max_execution_time', 300)


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

سلام
@masoudproton

این گفتگو ها صرفا برای راهنمایی هست فکر کنم ولی شما فکر کنم عادت دارید تا الی ماشاالله جواب بگیرید....!
سوالاتتون تمومی نداره انگار... :-)
گوگل هم منبع خوبی هست
یه سرچی کنید ، 2 تا منبع خارجی ببینید، توش به جواب همه سوالاتتون میرسید دوست عزیز
روش استاندارد و منطقی این هست که
توی php.ini سرور ست میکنند که روی همه محتوا و یوزر ها و اعمال بشه!

حالا شما روش دیگه ای بلدید و میخوایید بزنید ، خب بزنید! :-)


سید محمد حسین موسوی
تخصص : FullStack Developer
@SeyedMH.Mosavi 6 سال پیش مطرح شد
0

ظاهرا شما می خواید 1 میلیون تا داده رو یه جا ببینید!
اگر می خواید اینکارو بکنید قطعا سرور timeout می ده!
سرور هم timeout نده مرورگر شما crash می کنه
مروگر هم نباشه و مثلا بخواید این دیتا رو بگیرید و pdf هم بکنید باز هم این احتمالات هست
برای اینکار باید یه تعداد محدودی رو برگدونید و نمایش بدی که می شه همون pagination کردن اطلاعات
10 تا، 20 تا، 100 تا داده رو نشون بده و اگر خواستی بیشترش رو ببینی دوباره 100 تای بعدی و الی اخر


1masoud
تخصص : php,laravel
@masoudproton 6 سال پیش مطرح شد
0

@SeyedMH.Mosavi
می خوام آپدیت کنم این pagination رو چطوری روی آپدیت اعمال کنم


سید محمد حسین موسوی
تخصص : FullStack Developer
@SeyedMH.Mosavi 6 سال پیش مطرح شد
0

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


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

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