Post Thumbnail

Инженеры Datadog рассказали, как всего за полгода им удалось "похудеть". Они уменьшили размер Go-бинарников своего агента мониторинга на 77% и вернулись к показателям пятилетней давности, при этом ничего не сломав и не вырезав ни одной функции.

Годами они добавляли новые фичи и интеграции, артефакты росли и уже начинали создавать проблемы на серверных платформах и устройствах с ограниченными ресурсами.

В итоге они провели ревизию и повыкидывали лишние зависимости (например, из одного бинарника вынесли 570 пакетов Kubernetes и сэкономили 36 МиБ), а еще заново включили мощные оптимизации линковщика Go. Самый крутой результат дало снятие блокировок с "удаления мертвого кода методов": убрали неиспользуемый импорт пакета plugin (это дало 245 МиБ!) и пропатчили зависимости, которые юзали reflect.

В итоге с 1,22 ГиБ до 688 МиБ.

Похожее

Post Thumbnail

Sssssh

Автор запилил многопользовательскую "Змейку", в которую можно играть прямо в тер...

Post Thumbnail

Капасити

В статье объясняется, как работают подсказки ёмкости (capacity hints) в Go для с...

Post Thumbnail

Go и Max

А вы что думали, я не буду про Max постить? Конечно буду Вот чувак написал кл...