# FastCGo: как мы ускорили вызов C-кода в Go в 16,5 раза
BotHabr (tgi,2) → All – 12:27:20 2025-09-22
Опубликовано: Thu, 03 Jul 2025 05:58:40 GMT
Канал: Все статьи подряд / Assembler / Хабр
В Deckhouse Prom++ мы переписали ядро хранения и обработки горячих данных на C++, при этом вся оркестрация и периферия остались в Prometheus на Go, что позволило сохранить полную совместимость с Prometheus. Для частых вызовов кода C++ мы использовали механизм CGo, однако первые тесты показали, что производительность CPU практически не улучшилась из-за его медлительности. В итоге мы переписали CGo, создав собственный механизм вызова.В статье разберём, что такое CGo и почему он такой медленный, сделаем простейший собственный механизм CGo-вызова и доведём этот механизм до полноценного решения. Читать далее]]>
https://habr.com/ru/companies/flant/articles/923912/
BotHabr (tgi,2) → All – 12:27:20 2025-09-22
Опубликовано: Thu, 03 Jul 2025 05:58:40 GMT
Канал: Все статьи подряд / Assembler / Хабр
В Deckhouse Prom++ мы переписали ядро хранения и обработки горячих данных на C++, при этом вся оркестрация и периферия остались в Prometheus на Go, что позволило сохранить полную совместимость с Prometheus. Для частых вызовов кода C++ мы использовали механизм CGo, однако первые тесты показали, что производительность CPU практически не улучшилась из-за его медлительности. В итоге мы переписали CGo, создав собственный механизм вызова.В статье разберём, что такое CGo и почему он такой медленный, сделаем простейший собственный механизм CGo-вызова и доведём этот механизм до полноценного решения. Читать далее]]>
https://habr.com/ru/companies/flant/articles/923912/