Node.js 23: عصر جديد لـ JavaScript على منصات ARM
حصل مجتمع مطوري JavaScript على تحديث مهم: أعلن فريق Node.js عن الدعم الكامل لبنية ARMv9 في الإصدار المستقر من بيئة التشغيل 23.0.0. هذه ليست مجرد رقعة عادية، بل هي خطوة استراتيجية تفتح آفاقًا جديدة لـ Node.js في مجالات الأنظمة المدمجة، وإنترنت الأشياء، والحوسبة السحابية.
ما الذي تغير؟
سابقًا، كان Node.js يعمل بالفعل على أجهزة ARM (مثل Raspberry Pi)، لكن التحسين كان موجهًا لبنية ARMv8 (64 بت). الإصدار الجديد يتضمن:
- دعم أصلي لتعليمات ARMv9 — تحسين العمل مع عمليات المصفوفات (SVE2) والتشفير؛
- تقليل استهلاك الطاقة — توفير يصل إلى 18% في مهام الإدخال والإخراج؛
- تسريع محرك V8 — زيادة في أداء الحوسبة تصل إلى 12% على رقائق ARM من الجيل الجديد (Apple M4، AmpereOne، AWS Graviton4).
لماذا هذا مهم للمطورين؟
JavaScript، على عكس لغات الأنظمة، نادرًا ما ترتبط بـ"العتاد". ومع ذلك، تجاوز Node.js منذ فترة طويلة حدود خوادم الويب. الآن أصبح أداة كاملة لـ:
- حوسبة الحافة (Edge Computing) — تشغيل البرامج النصية مباشرة على أجهزة التوجيه الشبكية والكاميرات الذكية؛
- وظائف السحابة (FaaS) — عمل محسّن على خوادم ARM من AWS وGoogle Cloud وAzure؛
- الروبوتات والطائرات بدون طيار — بيئة تشغيل خفيفة مع زمن استجابة منخفض.
كيف سيؤثر هذا على النظام البيئي؟
وفقًا لبيانات الاختبارات المعيارية، يقوم Node.js 23 على شريحة Apple M4 بتنفيذ طلبات HTTP أسرع بنسبة 15% مقارنة بمعالج Intel Xeon من الجيل السابق على بنية x86. هذا يعني أن تطبيقات الخادم على JavaScript يمكن أن تكون الآن أرخص في الاستضافة (نظيرات ARM أرخص بنسبة 20-30%) دون فقدان الأداء.
علاوة على ذلك، أثر التحديث على أدوات البناء: node-gyp الآن يكتشف تلقائيًا ARMv9 ويختار أعلام التجميع المثلى. لن يضطر المطورون إلى تعديل التكوينات يدويًا لـ Raspberry Pi 5 أو MacBook Air الجديد.
ما التالي؟
إصدار Node.js 23 ليس نقطة نهاية، بل بداية انتقال النظام البيئي لـ JavaScript إلى ARM. بالفعل يتم اختبار دعم RISC-V، وفي الخطط دمج كامل مع WebAssembly System Interface (WASI) لسيناريوهات العتاد المجرد. إذا كنت تستخدم Node.js في السحابة أو على الأجهزة، فإن التحديث إلى الإصدار 23 هو استثمار في مستقبل مشاريعك.
يمكن تنزيل الإصدار الجديد من الموقع الرسمي لـ Node.js أو عبر مديري الحزم (nvm، fnm). سجل التغييرات المفصل متاح في مستودع GitHub.