مساعدة بخصوص ارتفاع CPU بسبب cron jobs

اخوتي في مجتمج arabia احتاج الى مساعدة بخصوص ارتفاع Cpu الخاص بسيرفر

السبب هو انني استعمل بعض cron jobs كل دقيقة

هل هناك حل لهذه المشكلة او بديل ان وجد ؟

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

المشكلة دي بتحصل لان الصفحة بتكون قيد التنفيذ و بيطلب السيرفر تشغيل الصفحة مرة تانية و بكده بعد 100 دقيقة بتكون الصفحة موجودة 100 مره و ده بيستهلك كل الرامات و المشكلة دي اسمها overlapping cron jobs

الحلول ليها كتير

فيها مثلا انك تخلي الصفحة تقفل بعد مدة معينة ودي بتستخدم فيها set_time_limit ( int $seconds )

او مثلا تستخدم Using flock وده امر في السيرفر بيمنع تنفيذ الأوامر اكتر من مرة لنفس الامر

/usr/bin/flock -w 0 /path/to/cron.lock /usr/bin/php /path/to/cron.php

او ممكن تستخدم طريقة جميلة جدا عملها واحد فنان في الصفحة دي

متنسناش في دعائك

شكرا لك

لاكن لا امتلك سيرفر

بل استضافة مشتركة

ممكن احد الحلول التي يمكنني ان استخدمه في الاستضافة المشتركة

اعتقد ان المشكلة من ال jobs نفسها وليست من برنامج الجدولة

اعلم

هذا ما ذكرته انا ايضا ;)

وانا اسئل عن حل لجعل كروب جوبز تعمل بدون اي لود على سيرفر

هو يقصد أن ال jobs تحتاج إلى Optimization

ما الذى تقوم بعمله الدالة التى يتم طلبها ؟ و كيف نفذتها ؟؟ و هل تستعلم من قاعدة البيانات على بيانات زائدة لا تستخدمها ؟؟

هل تطلب API خارجى أكثر من مرة ؟؟ معظم ال APIs يكون فيها ما يسمى Batch actions فهل حاولت إستخدامها بدلاً من الطلب أكثر من مرة ؟؟

هل حاولت تقليل عدد ال limits التى تقوم بها كل مرة ؟؟

تحديث :

لم أكن قرأت هذا التعليق

قبل الرد

و أعتقد أنه جاء لك بالحل ما عليك سوى القراءة

قم بمعرفة السبب الذي يجعل الكود يرفع اللود على السيرفر ثم قم بتحسينه , او ضع الكود هنا ان امكن لمعرفة المشكلة , او طرح الفكرة المستخدمه من الممكن ان يكون هناك طريقة افضل لاتستهلك الكثير من الموارد

-1

سبب جعل كرون جوبز يرفع اللود هو كود مرتبط مع تطبيق اسلامي

لينشر كل وقت على حسابات المشتركين في مواقع التواصل تلقائيا الاحاديث وايات قرأنية

الواضح انك تقوم بارسال لكل حساب طلب منفصل ومنها اذا زاد عدد المشتركين ستبدا الدقيقه التاليه قبل ان تنتهي العمليه السابقه

الحل باستخدام

عمل منشور موحد لجميع الحسابات في طلب واحد