Производительность

О стриме развития

Стримы развития — это срежиссированные тематические маршруты по конференции

Программа стрима

Всё необходимое для глубокого погружения в тему

20 апреля, 10:00 - 10:25, Зал 3 / Аудитория 4

Компиляция Go в динамическую либу или как мы ускорили выкатку фичи в 2 раза, но нам не понравилось

Небольшой сказ с примерами о том какие плюсы и минусы мы с командой обнаружили в процессе использования либ, написанных на Go и почему решили более к этому не возвращаться

Михаил Кичигин

Михаил Кичигин

AvitoTech

20 апреля, 10:25 - 10:50, Зал 3 / Аудитория 4

Охота на утечки горутин: новый профиль в Go

Утечки горутин — скрытая и опасная проблема в Go-приложениях. Лёгкие и «дешёвые» горутины могут превращаться в долговечно работающие зомби, постепенно увеличивая потребление памяти и нагрузку на CPU. Реальные кейсы, такие как инцидент в Uber (×9 рост памяти и +16% CPU), показывают, насколько дорого обходятся такие ошибки в продакшене.

В докладе мы разберём: * какие паттерны в Go чаще всего приводят к утечкам горутин; * реальные случаи из продакшн кода и даже самого компилятора Go; * как диагностировать проблему с помощью существующих инструментов — например, uber-go/goleak; * новый Goroutine Leak Profile, уже добавленный в master-ветку Go и ожидаемый в Go 1.26; * какие утечки новый профиль не может найти; * практические рекомендации, которые помогут вам защитить свои сервисы от скрытых утечек.

Доклад будет полезен всем, кто разрабатывает Go-сервисы, особенно в высоконагруженных системах.

Арсений Самойлов

Арсений Самойлов

Независимый эксперт

20 апреля, 12:20 - 12:45, Зал 1 / Большой

Lightning Talks «Why Go Hides Its Spinlocks»

A spinlock is the difference between pacing by the door versus taking a nap while waiting for a package. One burns CPU cycles. The other yields to the scheduler. Both have their place, but Go deliberately hides spinlocks from you.

This talk explains the core trade-off between spinning and parking, reveals the hidden spin within a Mutex, and explores why Go's runtime uses a "spinbit" design that allows only one goroutine to spin at a time.

You'll learn when spinning wins, when it's catastrophic, and why adaptive hybrid locks beat both pure approaches.

Alex Rios

Alex Rios

Memed

20 апреля, 12:45 - 13:10, Зал 1 / Большой

Lightning Talks «Flight Recorder: Go's Black Box for Production»

Debugging production latency is an information problem. By the time you know something went wrong, the execution that caused it is gone. Traditional profiling asks you to predict when to look. FlightRecorder asks a better question: what if you were always looking?

FlightRecorder writes trace events into a ring buffer at 1-2% CPU overhead, goroutine state changes, blocking, mutex contention, and scheduling delays. When a request breaches P99 or an error spike hits, you snapshot. This talk covers FlightRecorder's architecture, why pprof can't explain most latency, the MinAge/MaxBytes tradeoff, and automatic snapshot patterns from production deployments.

Alex Rios

Alex Rios

Memed

20 апреля, 17:00 - 17:50, Зал 2 / Аудитория 2

Тернарный оператор в Go. Социальный эксперимент против диктатуры if else.

Go - один из самых лаконичных языков, но у него до сих пор нет тернарного оператора. Почему? Так исторически сложилось, команда языка сознательно не добавляет эту конструкцию. Каждый, кто писал на C, Java, JavaScript или PHP, хотя бы раз ловил себя на мысли: «а вот тут бы пригодился ?: вместо громоздкого if-else».

Доклад посвящён исследованию восприятия идеи добавления тернарного оператора в Go. В рамках работы проведён социальный эксперимент, включающий опросы разработчиков и контрибьюторов языка, сбор аргументов сторонников и противников изменений, анализ существующих proposal’ов и обсуждений в issue-трекере Go. Отдельная часть доклада посвящена практической стороне эксперимента - модификации компилятора, работе с AST и IR-узлами, синтаксическим проверкам и интеграции в IDE на базе форка go-ternary. Разберём, какие сложности возникают при расширении языка и чему подобные эксперименты учат нас о границах и принципах Go.

Дмитрий Буров

Дмитрий Буров

Lamoda Tech

20 апреля, 18:10 - 19:00, Зал 3 / Аудитория 4

Построим облако с нуля

Как собрать свое облако, способное масштабироваться под любые нагрузки? Погрузимся в связку KVM, Qemu и Go для управления виртуализацией, развернем отказоустойчивое хранилище на Ceph и научимся управлять ресурсами через механизм реконсиляции. Узнайте, какие инструменты и подходы превратят ваш сервер в мощное облако — без магии, только код и железо.

Сергей Самойлов

Сергей Самойлов

МТС Web Services (MWS)

Форматы

Краткий гид по форматам в программе

Доклад / лекция

Классический рассказ в лекционном формате.

Мастер-классы

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

Блиц-доклады (Lightning talks)

Короткие доклады до 20 минут — отдельные или объединенные общей темой.

Круглые столы

Несколько экспертов обсуждают острую тему со сцены. Остальные наблюдают. Любой из зала может задать вопрос или предложить решение, если хочет внести вклад.

Групповая работа

Мы делим участников на несколько тематических групп.

У каждой группы своя подтема (что именно аргументировать, кому именно аргументировать - разделённые по какому-то принципу). Группы обсуждают, может быть играют в имитационную игру, где пробуют свои аргументы в бою, затем кто-то от каждой группы делает доклад на 10 минут уже для всей аудитории. В конце выбираем самую полезную группу.

Панельная дискуссия

Это сессия ответов на наиболее интересные в секции вопросы от представителей разных отраслей и компаний. Честно, аргументированно и "без купюр".