Разработка

HighLoad


Valentin Bartenev
Core Developer @ NGINX, Inc.
Москва

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

Однако личный опыт показывает, что это далеко не так. В данном докладе я подробно расскажу о том, с какими недоработками пришлось столкнуться и каких возможностей очень сильно не хватает в Linux API, чтобы сделать nginx и другие наши разработки ещё лучше, быстрее. Проведу параллели с тем, как эти проблемы решаются в других unix-подобных операционных системах.

Рассчитываю, что доклад будет полезным не только тем, кто напрямую связан с Linux ядром, но и более широкой аудитории в качестве наглядного антипримера, как всё-таки не стоит проектировать программные интерфейсы.


Pavel Ajtkulov
Software engineer @ Piano
Если у вас есть много многомерных данных, и вы не знаете что с ними делать, то ... Покажу прототип, который позволяет за единицы секунд (1-3 с) - визуализировать (с небольшим выходом из 3-х мера), - производить запросы (filter, group, углубление по измерениям) И это для входных сырых данных в сотни Гб и десятками измерений. С рассказом о бизнес использовании, со стороны технологий (scala + scala.js), почему двух-мер это плоско и неправильно. Для аналитиков, бизнеса, и технарям близким к big data.

Антон Степаненко
VP Engineering @ Lazada
Москва

Нагрузочное тестирование в Lazada

* Как мы до этого дошли и зачем нам это надо

* Что мы используем готового и что пришлось разработать самим

* Как мы анализируем результаты тестов и какую статистику собираем

* Почему мы доверяем результатам тестирования

* Как мы стреляем по продакшену и ничего не боимся

* Какие ресурсы нужны для построения системы нагрузочного тестирования

* Что мы хотим сделать в будущем


Язык Go уже завоевал значительную популярность и всё чаще используется для написания сетевых сервисов или консольных утилит. От версии к версии улучшается компилятор и производительность стандартной библиотеки. Однако иногда возникает задача найти и ускорить узкое место, найти блокировку или объяснить задержки сборщика мусора. Об этом мой доклад. Мы научимся писать правильные benchmark'и, использовать pprof и execution tracer, посмотрим на отладочную информацию runtime и коснёмся расширенных возможностей отладки производительности на Linux. Так же я расскажу про некоторые существующие оптимизации компилятора Go и как случайно их не отключить.


Иван Гущин
Старший инженер - программист @ ОА "ПЕТЕР-СЕРВИС"
Санкт-Петербург

- Алгоритмы формирования рекурентных платежей и почему они такие сложные.

- Парадигма автоматного программирования. Чем так хороша FSM? FSM как микрооперационная система приложения.

- Отказоустойчивость и FSM.

- Система взаимодействующих FSM.

- Как переписать систему, написанную на флагах.