Go ضد المنافسين: نتائج اختبارات الأداء لعام 2025

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

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

ابدأ الدورة

Go ضد المنافسين: نتائج اختبارات الأداء لعام 2025



في عام 2025، تواصل لغة Go (Golang) تعزيز مكانتها في قطاع الخدمات السحابية والخدمات المصغرة والخوادم الخلفية عالية التحميل. ومع ذلك، أصبحت المنافسة من Rust وPython (مع امتدادات C) وC++ الكلاسيكية أكثر إثارة للاهتمام. قمنا بتحليل أحدث اختبارات الأداء من مجتمع TechEmpower والمختبرات المستقلة لفهم أين لا تزال Go متقدمة وأين تتخلف.



منهجية الاختبار

تم إجراء جميع القياسات على نفس الأجهزة (AMD EPYC 64 نواة، 256 جيجابايت RAM، NVMe SSD) تحت نظام Ubuntu 24.04 LTS. تضمنت الاختبارات:

  • خادم HTTP — معالجة 10,000 طلب/ثانية مع استجابة JSON (Fasthttp مقابل Actix مقابل Node.js مقابل Sanic)
  • العمليات الحسابية — ضرب مصفوفات 2048×2048 (مقيدة بوحدة المعالجة المركزية)
  • استهلاك الذاكرة — وضع الخمول بعد تحميل 100 ألف كائن
  • سرعة الترجمة — وقت بناء مشروع متوسط (~50 ملفًا)


نتائج اختبارات الأداء

إليك الأرقام الرئيسية (تم اعتبار Go 100% في كل فئة):

  • سعة نقل HTTP: Go — 100% (1.2 مليون req/s)، Rust — 115%، C++ — 130%، Python (uvicorn) — 20%.
  • الأداء الحسابي: Go — 100%، Rust — 108%، C++ — 135%، Python (NumPy) — 45% (مع الواجهة الخلفية C).
  • استهلاك الذاكرة (لكل 10 آلاف goroutine/مؤشر ترابط): Go — 4.2 ميجابايت، Rust — 3.8 ميجابايت، C++ — 5.1 ميجابايت، Python — 89 ميجابايت.
  • سرعة الترجمة: Go — 0.8 ثانية، Rust — 4.2 ثانية، C++ — 7.1 ثانية، Python — 0.1 ثانية (تفسير).


التحليل: بماذا تتفوق Go في 2025؟

على الرغم من أن Rust وC++ تظهران أداءً "خامًا" أفضل في العمليات الحسابية، إلا أن Go تحافظ على الريادة في بيئة الويب بفضل ثلاثة عوامل:

  • Goroutines: مؤشرات ترابط خفيفة بتكلفة إضافية تبلغ ~4 كيلوبايت مقابل 1 ميجابايت لمؤشرات ترابط النظام في C++.
  • جامع القمامة: في الإصدار Go 1.24، تم تقليل تأخيرات GC إلى 0.5 مللي ثانية عند تحميل 95%، مما يقترب من إدارة الذاكرة اليدوية في Rust.
  • النظام البيئي: تغطي المكتبة القياسية 90% من مهام الخلفية دون الحاجة إلى تبعيات خارجية.


لا تزال Python ملك النماذج الأولية والتعلم الآلي، ولكن بالنسبة لأحمال الإنتاج، تقدم Go سعة نقل أكبر بمقدار 4-5 مرات بنفس ميزانية وحدة المعالجة المركزية.



استنتاجات للمطورين

إذا كان مشروعك عبارة عن API عالي التحميل، أو بث بيانات، أو خدمة سحابية، فإن Go تبقى الخيار الأمثل في عام 2025. Rust — للأنظمة ذات المتطلبات الصارمة لأمان الذاكرة (برامج التشغيل، النوى). C++ — للألعاب والأنظمة المدمجة. Python — للنماذج الأولية السريعة وعلوم البيانات.



الجداول الكاملة لاختبارات الأداء والكود المصدري للاختبارات متاحة في مستودع TechEmpower Framework Benchmarks.

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