كيف يمكنني جدولة مهام لمرة واحدة من تطبيق Perl CGI؟

StackOverflow https://stackoverflow.com/questions/942749

  •  09-09-2019
  •  | 
  •  

سؤال

أكتب تطبيقا للسماح للمستخدمين بجدولة مهام عملية طويلة لمرة واحدة من تطبيق ويب (Linux / Apache / CGI :: تطبيق). للقيام بذلك أنا أستخدم الجدول الزمني :: في الوحدة النمطية التي هي واجهة بيرل إلى الأمر "في". نظرا لأن المهام المجدولة لا تكرر، فإنني لا أفكر في "كرون". لدي قضيتان مع "في" على الرغم من:

  1. تعمل الجدولة بشكل جيد عندما يعمل تطبيق CGI الخاص بي تحت Wrapper Suexec، ولكن ليس عند المقرر من قبل مالك عملية Apache. كيف يمكنني الحصول على جدولة للعمل في كل من البيئات (Suexec ولا Suexec)؟
  2. يبدو أن العمليات المجدولة من قبل "at" أو الجدول الزمني :: ليس لديها تقرير فشل، وأحيانا أجد المهام المجدولة تفشل بصمت. هل هناك طريقة لتسجيل حقيقة أن المهمة المجدولة (وليس المجدول نفسه) فشلت في الركض؟

أنا لست ثابتا على "عند" وانفتح باستخدام أساليب جدولة أخرى أكثر قوة إذا كان هناك أي.

شكرا لكم على اهتمامكم.

هل كانت مفيدة؟

المحلول

لقد سمعت أشياء جيدة عن شوارتز وبعد ليس لها تأخير - حتى لو كان؛ كنت ترسل الوظائف عبر، ولكن يجب حل كل من المشكلات التي تسردها أعلاه، طالما كان البرنامج النصي Server_Job بسيطا.

(كتحذ، لقد استخدمت فقط جيرمان, أعتقد أنك تريد قائمة انتظار وظيفة موثوقة لهذا، "إطلاق النار ونسيان"، حتى تتمكن من الحفاظ على Submit_Job غبية.)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top