Разработка высокопроизводительных серверных приложений для Linux/UNIX (Киев)

 
Время проведения
07
июля2012
Завершено

Киевский офис компании DataArt, Бехтеревский переулок, 14е, 5 этаж

Описание

Основной темой для нас будут методы и технологии, которые позволяют HTTP серверам, серверам Instant Messaging'а, серверам баз данных и другим серверным приложениям обрабатывать сотни тысяч запросов в секунду и гигабиты тарфика на "железе" базового класса. Мы посмотрим на примеры кода, научимся их оптимизировать, разберемся в том, как ведет себя Linux под некоторыми типами нагрузок.

Целевая аудитория - разработчики, уже имеющие опыт программирования на C/C++ для Linux/UNIX, но желающие повысить производительность своих приложений.

При коллективном участии 5+ человек предоставляется !скидка 10%!

План мероприятия

10:30-11:00     Регистрация участников
11:00-12:00     
- архитектура сервера (потоки, процессы, очереди, ввод-вывод)
- concurrency (работа с потоками, синхронизация, переключения контекста)

12:00-12:15     15 минут на кофе
12:15-13:15     
- быстрые структуры данных, свойства классических структур данных
- выравнивание данных и оптимизация работы кэшей процессора
- lock-free структуры данных (атомарные операции, барьеры памяти)

13:15-14:15     обед 1 час
14:15-15:15     
- аллокаторы памяти (когда нехватает стандартного аллокатора, типы
- аллокаторов, как разработать свой аллокатор)
- постороение внутренних кэшей (структуры данных, политики вытеснения)

15:15-15:30     15 минут на кофе
15:30-16:30     
- zero-copy (сетевой и дисковый ввод-вывод без копирования, техники снижения копирования в своем коде)
- методы работы с большими файлами (доступ с помощью mmap() и O_DIRECT, выделение блоков)
- как Linux работает с файлами (page cache, синхронизация с диском; планирование ввода-вывода)

16:30-16:45     15 минут на кофе
16:45-17:45     
- CPU-binding (привязка потоков/процессов и прерываний к процессорам) профилирование;
- когда этого мало и стоит переходить на kernel programming