أصبح Temporal المعيار لبناء التطبيقات الموزّعة الموثوقة. فهو يوفّر ضمانات تنفيذ دائمة (durable execution)، مما يسهّل بناء سير عمل مقاوم للأعطال.
المفاهيم الأساسية
- سير العمل (Workflows): دوال دائمة طويلة الأمد
- الأنشطة (Activities): مهام قصيرة الأمد قابلة للفشل
- العمّال (Workers): عمليات تُنفّذ سير العمل
- الإشارات (Signals): مدخلات خارجية لسير العمل الجاري
بناء سير عمل
// workflows.ts
import { proxyActivities } from "@temporalio/workflow";
import type * as activities from "./activities";
const { sendEmail, chargePayment, fulfillOrder } = proxyActivities<typeof activities>({
startToCloseTimeout: "1 minute",
retry: { maximumAttempts: 3 },
});
export async function orderWorkflow(order: Order): Promise<void> {
await chargePayment(order.paymentDetails);
await sendEmail(order.customerEmail, "Payment confirmed");
await fulfillOrder(order.id);
await sendEmail(order.customerEmail, "Order shipped");
}
لماذا Temporal؟
- إعادة محاولات تلقائية مع تراجع تدريجي أُسّي
- حفظ حالة سير العمل تلقائياً
- الصمود أمام تعطّل العمليات وإعادة تشغيلها
- رؤية وتصحيح أخطاء مدمجان
التعليقات (0)
اترك تعليقًا
لا توجد تعليقات بعد. كن أول من يشارك أفكاره!