От Python к Go: не бойтесь переписывать готовые решения - Иван Локк, YADRO

У каждого языка есть свои преимущества и недостатки. И иногда приходит понимание, что стек был выбран неправильно. Иван рассказал, почему Python стал проблемой производительности в компоненте OVN Metadata Agent при работе с платформой с волнообразной активностью. Поделился, как после этого искали решения на Go. Провел разбор проблем, связанных с операциями приведения типов, и объяснил, почему на Go это работает по-другому. 00:00 — Приватное облако «Атмосфера» и роль OpenStack в инфраструктуре «Ядра» 02:07 — Проблема: почему виртуальные машины не загружались при нагрузке более 100 стендов (сбой metadata API) 04:48 — Архитектура Neutron: как работают metadata-агент, OVN и Open vSwitch 07:10 — Поиск узкого места: профилирование Python-кода и выбор пути решения 09:05 — Сравниваем производительность: Python vs Go 11:30 — Подготовка к миграции: сохранение API, деплоя и написание интеграционных тестов 13:10 — Подводные камни переписывания: скрытые мутации и side-эффекты в Python-коде

Иконка канала Истовый Инженер
1 584 подписчика
12+
16 просмотров
день назад
12+
16 просмотров
день назад

У каждого языка есть свои преимущества и недостатки. И иногда приходит понимание, что стек был выбран неправильно. Иван рассказал, почему Python стал проблемой производительности в компоненте OVN Metadata Agent при работе с платформой с волнообразной активностью. Поделился, как после этого искали решения на Go. Провел разбор проблем, связанных с операциями приведения типов, и объяснил, почему на Go это работает по-другому. 00:00 — Приватное облако «Атмосфера» и роль OpenStack в инфраструктуре «Ядра» 02:07 — Проблема: почему виртуальные машины не загружались при нагрузке более 100 стендов (сбой metadata API) 04:48 — Архитектура Neutron: как работают metadata-агент, OVN и Open vSwitch 07:10 — Поиск узкого места: профилирование Python-кода и выбор пути решения 09:05 — Сравниваем производительность: Python vs Go 11:30 — Подготовка к миграции: сохранение API, деплоя и написание интеграционных тестов 13:10 — Подводные камни переписывания: скрытые мутации и side-эффекты в Python-коде

, чтобы оставлять комментарии