Search
Write a publication
Pull to refresh

Comments 5

КДПВ напоминает аббревиатуру СВО, немного напрягает мои нежные инженерные чувства.

>В будущем мы обязательно поделимся своими результатами и попробуем оценить эффективность такого подхода.

Не поделитесь ли информацией, насколько динамические раннеры улучшили работу и уменьшили расходы на облачного провайдера?

Да, пока еще не успели подвести итоги и вывести какие-то конкретные цифры.

Если кратко, то:

  1. Скорость сборок выросла за счет того, что каждая джоба запускается в изолированной среде и на нее не влияют другие процессы. Плюс смогли значительно увеличить характеристики ранера, что ускорило сборку особенно для nodejs проектов. Так же исчезли очереди, поскольку динамические раннеры создаются по требованию и и легко масштабируются и даже в пике все пережевывается быстро.

  2. По деньгам тут сложно сказать. Но динамические раннеры точно дешевле, поскольку работают только когда нужно. Так например, ночью и в выходные они соверешенно не тратят деньги. Плюс они коротко живущие, у нас каждый раннер живет не более 30 минут, если на него не прилетает нового задания.

Я не виду у вас настройки распределённого кеша (да и сама идея распределённого кеша смущает). Учитывая, что раннеры теперь живут по 30 минут — точно ли стало быстрее?


Для долгоживущих-то раннеров можно node_modules между сборками сохранять...

Распределенный кэш уже позже добавлял, после написания статьи. Реализовано через "файловое хранилище" (аля NFS от Яндекс Облако). Правда пришлось дописывать docker-machine провайдер от яндекса(пока не хватает времени завершить МР), чтобы динамические раннеры умели при создании подхватывать и монтировать ФХ. В результате как раз у раннеров, где собирается nodejs есть общая папка, которая используется для хранения разнообразного кэша или общих файлов.

Sign up to leave a comment.

Articles