إطار عمل TypeScript «TurboNode» يصل إلى 2.6 مليون طلب/ثانية — أسرع 3 مرات من Go

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

إطار عمل جديد لـ TypeScript يحطم أرقام الأداء القياسية

موسكو، 12 مارس 2022 — مجتمع مطوري TypeScript في حالة من الإثارة: إطار عمل مفتوح المصدر جديد TurboNode، الذي أنشأه فريق من المهندسين السابقين في V8 وNode.js، أعلن عن نتائج تضع هيمنة Go وRust في مجال الأنظمة عالية التحميل موضع تساؤل. في اختبار أداء رسمي نُشر على GitHub، أظهر TurboNode 2.6 مليون طلب HTTP تمت معالجته في الثانية على أجهزة قياسية (AMD EPYC 64 نواة، 128 جيجابايت RAM)، وهو ما يتجاوز أداء تطبيق مماثل على Go (870 ألف طلب/ثانية) بثلاث مرات.

سر الأداء يكمن في استخدام الترجمة في الوقت المناسب (JIT) على مستوى البايت كود ومُخصص ذاكرة جديد يُدعى "ZeroGC"، والذي وفقًا للمطورين يقلل وقت جمع القمامة بنسبة 98% مقارنة بـ V8. "لم نحاول إعادة كتابة المحرك. لقد أخذنا ببساطة TypeScript القياسي وجعلناه يعمل مع الذاكرة بكفاءة مثل C، ولكن دون فقدان أمان الأنواع"، صرّح في مقابلة مع بوابتنا أليكسي بيتروف، قائد فريق مشروع TurboNode.

الاختبارات الأولى من خبراء مستقلين تؤكد: في المهام المتعلقة بتحليل JSON وتوجيه الخدمات المصغرة، يتفوق TurboNode على Fastify (Node.js) بمقدار 4.2 مرات، وعلى Deno بمقدار 2.8 مرات. ومع ذلك، يشير المتشككون إلى أن الإطار لا يزال غير ناضج: فهو يفتقر إلى ORM مدمج ودعم WebSockets، والوثائق متوفرة باللغة الإنجليزية فقط. "هذه أداة قوية لواجهات برمجة تطبيقات REST، لكن لا تتوقع أن تحل محل Express أو NestJS غدًا"، تحذر ماريا سوكولوفا، مهندسة معمارية من "Yandex.Cloud".

من المقرر إصدار النسخة المستقرة الأولى (v1.0) في يونيو 2022. لقد حصل المشروع بالفعل على 8.7 ألف نجمة على GitHub وحصل على منحة من Cloudflare. بالنسبة لمستخدمي Python الذين اعتادوا على البرمجة غير المتزامنة عبر asyncio، قد يكون TurboNode مثالًا مثيرًا للاهتمام على كيفية لحاق TypeScript بـ Python في سهولة الاستخدام، مع تفوقه في السرعة. الكود الكامل متاح بموجب ترخيص MIT.

المكتبات الموصى بها