مُفَسِّرات Go أسرع: اللحاق بـ C++

تم تنفيذ محرك تقييم SQL المضمّن في Vitess، وهو قاعدة البيانات مفتوحة المصدر التي تُشغّل PlanetScale، في الأصل كمحوّل AST كان يعمل مباشرةً على AST SQL المُولَّدة بواسطة مُحلِّلنا. خلال العام الماضي، استبدلناه تدريجيًا بآلة افتراضية، والتي على الرغم من كتابتها بلغة Go بشكلٍ أصلي، إلا أنها تُقدّم أداءً مُشابهاً لرمز التقييم الأصلي بلغة C++ في MySQL. والأكثر لفتًا للنظر، أن الآلة الافتراضية الجديدة أثبتت مرارًا وتكرارًا أنها أسهل في الصيانة من مُفَسِّر Go الأصلي، على الرغم من أنها أسرع بمقدار أوامر حجمية. دعونا نراجع خيارات التنفيذ التي اتخذناها للحصول على هذه النتائج المُذهلة.
اقرأ المزيد