المهارات Temporal Python Pro
📦

Temporal Python Pro

آمن

بناء سير عمل متينة باستخدام Temporal Python SDK

بناء أنظمة موزعة موثوقة أمر معقد. توفر هذه المهارة إرشادات خبيرة حول Temporal Python SDK لتنسيق سير العمل المتين، والتعامل مع الأخطاء، والنشر في بيئة الإنتاج.

يدعم: Claude Codex Code(CC)
🥉 72 برونزي
1

تنزيل ZIP المهارة

2

رفع في Claude

اذهب إلى Settings → Capabilities → Skills → Upload skill

3

فعّل وابدأ الاستخدام

اختبرها

استخدام "Temporal Python Pro". إنشاء سير عمل لتنفيذ الطلبات

النتيجة المتوقعة:

يعرّف سير عمل باستخدام @workflow.defn، وينفذ أنشطة validate_order و charge_payment و send_confirmation مع سياسات إعادة المحاولة المناسبة وتكوين المهلة الزمنية

استخدام "Temporal Python Pro". التعامل مع فشل الدفع مع التعويض

النتيجة المتوقعة:

يوضح نمط try/except للقبض على ActivityError، وتنفيذ نشاط التعويض refund_payment، وإصدار أحداث إلغاء سير العمل

التدقيق الأمني

آمن
v1 • 2/25/2026

Static analysis scanned 0 files with 0 lines. Risk score is 0/100. No suspicious patterns detected. This is a prompt-only skill providing guidance on Temporal Python SDK usage without executable code. Safe for publication.

0
الملفات التي تم فحصها
0
الأسطر التي تم تحليلها
0
النتائج
1
إجمالي عمليات التدقيق
لا توجد مشكلات أمنية
تم تدقيقه بواسطة: claude

درجة الجودة

38
الهندسة المعمارية
100
قابلية الصيانة
87
المحتوى
50
المجتمع
100
الأمان
74
الامتثال للمواصفات

ماذا يمكنك بناءه

تنسيق الخدمات المصغرة

تنسيق المعاملات الموزعة عبر خدمات متعددة باستخدام أنماط saga مع منطق التعويض.

عمليات الأعمال طويلة الأمد

تنفيذ سير عمل يمتد من ساعات إلى سنوات مع استمرار الحالة التلقائي والاسترداد.

خطوط معالجة البيانات

بناء سير عمل تحويل البيانات متعدد المراحل مع معالجة الدُفعات المتوازية والتعامل مع الأخطاء.

جرّب هذه الموجهات

إعداد سير العمل الأساسي
ساعدني في إنشاء سير عمل Temporal أساسي في Python يعالج طلبات المستخدمين. أحتاج إلى التحقق من الطلب، وتحصيل الدفع، وإرسال بريد إلكتروني للتأكيد. أرني تعريف سير العمل وتنفيذات الأنشطة.
تكوين سياسة إعادة المحاولة
أحتاج إلى تكوين سياسات إعادة المحاولة لنشاط يستدعي واجهة برمجية خارجية مع حدود معدل. تسمح الواجهة البرمجية بـ 100 طلب في الدقيقة وقد ترجع أخطاء 429. ما إعدادات سياسة إعادة المحاولة التي يجب استخدامها؟
تنفيذ معالج الإشارات
كيف أنفذ معالج إشارات يسمح للمستخدمين بإلغاء سير عمل قيد التشغيل؟ أرني كيفية التحقق من صحة الإشارة، والتعامل مع الإلغاء بسلاسة، وإصدار أنشطة التعويض.
استراتيجية اختبار الإنتاج
أحتاج إلى اختبار سير عمل يمتد 30 يومًا باستخدام تخطي الوقت. أنشئ اختبارًا يتحقق من إكمال سير العمل لجميع الأنشطة بالترتيب الصحيح والتعامل مع سيناريوهات المهلة الزمنية.

أفضل الممارسات

  • اجعل سير العمل مركزًا على منطق التنسيق؛ انقل جميع المكالمات الخارجية إلى الأنشطة
  • استخدم workflow.now() و workflow.random() بدلاً من وحدات datetime و random لضمان الحتمية
  • نفذ أنشطة متطابقة لضمان إعادة المحاولة الآمنة عند الأعطال العابرة
  • كوّن مهلات زمنية مناسبة: schedule_to_close للمدة الإجمالية، start_to_close للمحاولة الواحدة
  • استخدم بيئة اختبار تخطي الوقت للحصول على ملاحظات سريعة على سير العمل طويل الأمد

تجنب

  • استخدام datetime.now() أو random.random() مباشرة في كود سير العمل يكسر الحتمية
  • إجراء مكالمات واجهة برمجية مباشرة من سير العمل بدلاً من استخدام الأنشطة
  • عدم معالجة ActivityError في سير العمل، مما يفقد القدرة على تنفيذ التعويض
  • حجب حلقة الأحداث غير المتزامنة باستخدام كود متزامن في الأنشطة غير المتزامنة
  • تجاوز حدود حجم الحمولة 2MB عن طريق تمرير بيانات كبيرة بين الأنشطة

الأسئلة المتكررة

ما الفرق بين سير العمل والنشاط في Temporal؟
سير العمل يحدد منطق التنسيق ويجب أن يكون حتميًا. الأنشطة تنفذ العمليات الخارجية مثل مكالمات الواجهة البرمجية أو استعلامات قاعدة البيانات. سير العمل يستدعي الأنشطة، التي تنفذ العمل الفعلي.
كيف أختبر سير عمل يمتد لأيام أو أسابيع؟
استخدم WorkflowEnvironment مع تمكين تخطي الوقت. هذا ينفذ مكالمات workflow.sleep() فورًا، مما يسمح لك باختبار سير عمل يمتد لأشهر في ثوانٍ خلال اختبارات الوحدة.
هل يمكنني تحديث كود سير العمل بعد النشر؟
نعم، لكن يجب الحفاظ على الحتمية لسير العمل الجاري الحالي. استخدم workflow.get_version() للتعامل مع تغييرات الكود بسلاسة واختبر مع إعادة التشغيل مقابل سجلات الإنتاج.
ماذا يحدث عندما يفشل النشاط؟
يعيد Temporal المحاولة تلقائيًا بناءً على تكوين RetryPolicy الخاص بك. يمكنك تحديد الفاصل الزمني الأولي، ومعامل التراجع، والحد الأقصى للمحاولات، وتحديد أنواع أخطاء معينة على أنها غير قابلة لإعادة المحاولة.
كيف تختلف الإشارات عن الاستعلامات؟
الإشارات تسمح للأنظمة الخارجية بإرسال أحداث تعدل حالة سير العمل. الاستعلامات توفر وصولاً للقراءة فقط لحالة سير العمل للمراقبة. الإشارات يمكنها تغيير الحالة؛ الاستعلامات لا يمكنها ذلك.
ما نموذج التنفيذ الذي يجب استخدامه للأنشطة؟
استخدم الأنشطة غير المتزامنة لعمليات الإدخال والإخراج غير الحاجبة، و ThreadPoolExecutor لعمليات الإدخال والإخراج المتزامنة الحاجبة، و ProcessPoolExecutor للمهام المكثفة للمعالج. لا تحجب حلقة الأحداث غير المتزامنة أبدًا.

تفاصيل المطور

بنية الملفات

📄 SKILL.md