LLRT: وقت تشغيل JavaScript منخفض الكمون لوظائف بدون خادم
LLRT (وقت التشغيل منخفض الكمون)، من خدمات أمازون ويب، هو وقت تشغيل تجريبي لجافا سكريبت تم بناؤه لوظائف بدون خادم تحتاج إلى حد أدنى من زمن بدء التشغيل البارد. يعمل على تشغيل جافا سكريبت على محرك QuickJS داخل نواة Rust لتقليل وقت البدء واستخدام الذاكرة مقارنة بأوقات التشغيل التقليدية. تشمل القدرات الرئيسية بدء التشغيل البارد فائق السرعة، وملف ذاكرة منخفض، وتوافق جزئي مع واجهة برمجة تطبيقات Node.js، ومجموعة فرعية مسبقة الترجمة من AWS SDK v3. يحصل مطورو الوظائف بدون خادم ومهندسو السحاب على أكبر قيمة من LLRT.
كيف يقلل LLRT من زمن بدء التشغيل البارد؟
يستهدف LLRT البدء البارد عن طريق حذف ميزات المنصة غير الأساسية واستخدام مسار تنفيذ مضغوط. يستخدم المشروع QuickJS لتنفيذ السكربتات ونواة Rust لتقليل تكلفة التهيئة، وهو مزيج يذكر المؤلفون أنه يمكن أن ينتج أوقات بدء تشغيل تصل إلى 10 أضعاف أسرع من Node.js. هذا التصميم يضحي ببعض اكتمال المنصة لصالح تقليل زمن الاستدعاء الأول، وهو أمر مهم لوظائف السيرفرلس قصيرة العمر.
هل يتوافق LLRT مع متطلبات منصة Lambda الشائعة؟
تستهدف بيئة التشغيل بشكل أساسي Linux x86_64 و ARM64 لتتوافق مع بيئات التنفيذ السيرفرلس. تركز الثنائيات المسبقة البناء الرسمية على Linux و macOS، مما يبسط نشر السحابة لتلك الأهداف. يتطلب الاختبار على Windows تجميعًا من المصدر، مما يضيف خطوة بناء. يجب على المعماريين تضمين عمليات بناء موجهة لـ Linux أو استخدام القطع الأثرية المقدمة لـ macOS/Linux عند إعداد حزم النشر لبيئات متوافقة مع Lambda.
هل من الآمن اعتماد LLRT في سير العمل الإنتاجي؟
تصف AWS LLRT بأنه مشروع تجريبي، لذا يتطلب اعتماده للخدمات الحيوية التحقق. لقد تلقى المشروع إشادة من حيث الأداء، لكنه لا ينفذ مكتبة Node.js القياسية بالكامل وبالتالي ليس بديلاً مباشراً. يجب على الفرق إجراء اختبارات تكامل واختبارات اعتماد تحت حمل واقعي والتأكد من السلوك عبر تكاملات الخدمة قبل توجيه حركة المرور المباشرة إلى وظائف قائمة على LLRT.
هل أحتاج إلى أدوات إضافية أو خبرة للهجرة من الوظائف الحالية؟
تتطلب الهجرة وجود خط أنابيب بناء وفحوصات API لأن LLRT ينفذ JavaScript فقط. يجب تحويل TypeScript باستخدام مجمع مثل esbuild أو swc قبل النشر، وقد تحتاج استدعاءات مكتبة Node القياسية إلى الاستبدال. تشمل خطوات الهجرة الموصى بها:
تحويل TypeScript وتجميع التبعيات
استبدال الاستدعاءات الخاصة بـ Node غير المدعومة
تشغيل اختبارات التكامل واختبارات بدء التشغيل البارد في بيئة تجريبية
توصية عملية للتبني
يتناسب LLRT مع الفرق التي تشعر بالراحة في إضافة خطوة بناء وتشغيل اختبارات شاملة في مرحلة الاختبار. استخدمه أولاً للوظائف غير الحرجة والحساسة للزمن، وتحقق من سلوك النظام من البداية إلى النهاية قبل التوسع في النشر. احتفظ بخطة للتراجع وراقب مقاييس الاستدعاء بعد كل نشر حتى يتم اكتشاف التراجعات مبكرًا. اعتبر وقت التشغيل تجريبيًا بينما تبني الثقة في خط أنابيب التكامل المستمر لديك. موصى به.
المميزات
تم الإبلاغ عن بدء التشغيل البارد أسرع بما يصل إلى 10 مرات من Node.js
بصمة ذاكرة منخفضة مناسبة لوظائف Lambda الصغيرة
مجموعة فرعية مسبقة التجميع من AWS SDK لـ JavaScript v3 مضمنة
مبني بلغة راست مع كويك جي إس للتنفيذ المدمج
العيوب
حالة المشروع التجريبي تتطلب اختبارًا دقيقًا قبل الإنتاج
تختلف القوانين الخاصة باستخدام هذا البرنامج من بلد لآخر. نحن لا ننصح باستخدام هذا البرنامج ولا نقر استخدامه إذا كان ذلك مخالفًا لهذه القوانين. قد تحصل Softonic على رسوم إحالة إذا قمت بالنقر على المنتجات المعروضة هنا أو شرائها.