SlideShare a Scribd company logo
Docker в работе:
взгляд на
использование в
Badoo через год
Антон Турецкий
Docker в работе: взгляд на его использование в Badoo через год / Турецкий Антон (Badoo)
Вопросы: год назад,
а актуальны по сей день…
Docker: WTF?
Предыстория
Docker VS Puppet: Заменит ли Docker Puppet?
Предыстория
Virtualization VS Containerization:
Docker – еще одна виртуализация?
Предыстория
Docker: silver bullet?
THERE WILL BE NO SILVER BULLET.
RATHER IT WILL BE A COMBINATION
OF TECHNOLOGIES.
Andrew Gould(c)
Вопрос
Docker: нужен ли?
#1: о наболевшем
#1: Сервис -> Сервер
#1: Миграция Сервиса
#1: Миграция Docker
#1: Миграция Docker
#1: Отвязать Application от OS
ДЦ: подумай о железе!
#2: capacity planning
• + Место в стойке
#2: capacity planning
• + Место в стойке
• + Порты на сетевом оборудовании
#2: capacity planning
• + Место в стойке
• + Порты на сетевом оборудовании
• + Экономия электроэнергии
#2: capacity planning
• + Место в стойке
• + Порты на сетевом оборудовании
• + Экономия электроэнергии
• -/+ SPoF
#3: единое окружение
#4* $ cat ./Dockerfile
FROM dockerio.badoo.com/itops/sles_12_base:latest
COPY sle-12.puppet.repo /etc/zypp/repos.d/
RUN zypper -q -n in puppetdb
COPY database.ini /etc/puppetlabs/puppetdb/conf.d/database.ini
COPY jetty.ini /etc/puppetlabs/puppetdb/conf.d/jetty.ini
COPY ssl/ /etc/puppetlabs/puppetdb/ssl/
#Service start/stop
COPY run-puppetdb /etc/services.d/puppetserver/run
COPY finish-puppetdb /etc/services.d/puppetserver/finish
ENTRYPOINT ["/init"]
Грабли
Грабли: (r)?syslog(-ng)?
syslog into container
Грабли: (r)?syslog(-ng)?
syslog into container
• “One container – One Service”
Грабли: (r)?syslog(-ng)?
syslog into container
• “One container – One Service”
• Поддержка в работающем состоянии
Грабли: (r)?syslog(-ng)?
syslog into container
• “One container – One Service”
• Поддержка в работающем состоянии
• Нет времени объяснять – нужно сделать!
Грабли: (r)?syslog(-ng)?
syslog into container
• “One container – One Service”
• Поддержка в работающем состоянии
• Нет времени объяснять – нужно сделать!
Решение:
docker run -v /dev/log:/dev/log
Грабли: (r)?syslog(-ng)?
docker run -v /dev/log:/dev/log
• УРА!!! Всё работает, сообщения уходят!
Грабли: (r)?syslog(-ng)?
docker run -v /dev/log:/dev/log
• УРА!!! Всё работает, сообщения уходят!
• … до первого изменения/перезапуска
syslog на хост-системе…
Грабли: (r)?syslog(-ng)?
docker run -v /dev/log:/dev/log
• УРА!!! Всё работает, сообщения уходят!
• … до первого изменения/перезапуска
syslog на хост-системе…
Решение:
syslog into container
Грабли: mounts
Прокинуть “что-то” с хост ОС
Грабли: mounts
Прокинуть “что-то” с хост ОС
• /proc/mounts в контейнере
Грабли: mounts
Прокинуть “что-то” с хост ОС
• /proc/mounts в контейнере
• umount /dev/something (хост ОС)
Грабли: mounts
Прокинуть “что-то” с хост ОС
• /proc/mounts в контейнере
• umount /dev/something (хост ОС)
• umount /dev/something (container)
Грабли: mounts
Прокинуть “что-то” с хост ОС
• /proc/mounts в контейнере
• umount /dev/something (хост ОС)
• umount /dev/something (container)
• container restart …
Грабли: mounts
Решение:
• docker run --privileged
Грабли: mounts
Решение:
• docker run --privileged
• 100 раз подумать: так ли необходимо?
Грабли: mounts
Решение:
• docker run --privileged
• 100 раз подумать: так ли необходимо?
• избегать использование
“динамических точек монтирования”
Грабли: NAT
iptables, nf_conntrack
Грабли: NAT
Как можно решать:
• Увеличить таблицу conntrack
Грабли: NAT
Как можно решать:
• Увеличить таблицу conntrack
• Увеличить hashsize ~ conntrack / 8
Грабли: NAT
Как можно решать:
• Увеличить таблицу conntrack
• Увеличить hashsize ~ conntrack / 8
• Вспомнить про
conntrack_generic_timeout = 600
Грабли: NAT
Как можно решать:
• Увеличить таблицу conntrack
• Увеличить hashsize ~ conntrack / 8
• Вспомнить про
conntrack_generic_timeout = 600
• Ждать когда “бомбанёт”
Грабли: NAT
Решение:
• Делать свой bridge, Open vSwitch, Weave etc
Грабли: NAT
Решение:
• Делать свой bridge, Open vSwitch, Weave etc
• Использовать хост ОС
docker run --net=host
без использования conntrack
Грабли: Storage Driver
AuFS
Device Mapper (thinp)
BTRFS
и прочие
вкусности и сладости…
Грабли: BTRFS
• root of docker MUST be on a BTRFS
Грабли: BTRFS
• root of docker MUST be on a BTRFS
• Запись на диск сразу не идет, сначала – в журнал
(Performance ~ native / 2)
Грабли: BTRFS
• root of docker MUST be on a BTRFS
• Запись на диск сразу не идет, сначала – в журнал
(Performance ~ native / 2)
• “No space left on device”
# btrfs fi show /var/lib/docker
# btrfs fi balance start /var/lib/docker
Грабли: BTRFS
BTRFS – это то немногое,
что действительно нормально работает
Грабли: Storage Driver
Решение: OverlayFS
Грабли: Storage Driver
Решение: OverlayFS
• Hardlink на одинаковые файлы
Грабли: Storage Driver
Решение: OverlayFS
• Hardlink на одинаковые файлы
• Performance: RW ~ Native Speed
Грабли: Storage Driver
Решение: OverlayFS
• Hardlink на одинаковые файлы
• Performance: RW ~ Native Speed
• Space Usage – больше не загадка!
Грабли: Misc
• Больше ОДНОГО сервиса в контейнере
Грабли: Misc
• Больше ОДНОГО сервиса в контейнере
- свой ENTRYPOINT
Грабли: Misc
• Больше ОДНОГО сервиса в контейнере
- свой ENTRYPOINT
РЕШЕНИЕ: S6 http://skarnet.org/software/s6/
Грабли: Misc
• Больше ОДНОГО сервиса в контейнере
- свой ENTRYPOINT
РЕШЕНИЕ: S6 http://skarnet.org/software/s6/
• несколько FROM в одном Dockerfile
“FROM can appear multiple times within
a single Dockerfile"
Грабли: Misc
• Больше ОДНОГО сервиса в контейнере
- свой ENTRYPOINT
РЕШЕНИЕ: S6 http://skarnet.org/software/s6/
• несколько FROM в одном Dockerfile
“FROM can appear multiple times within
a single Dockerfile”
• docker exec Version < 1.8
Важный совет…
не забывать искать свою проблему тут:
Changelog
Issues
GitHub
Сервис в контейнере
Docker Base Image
• Обновления (Bug fixes, Security fixes, Patches etc)
Docker Base Image
• Обновления (Bug fixes, Security fixes, Patches etc)
docker run -it --rm sles_12_base:latest sh -c 'zypper lu -a'
Docker Base Image
• Обновления (Bug fixes, Security fixes, Patches etc)
docker run -it --rm sles_12_base:latest sh -c 'zypper lu -a’
• “Требуется внимание оператора” => Jira Task
Docker Base Image
• Обновления (Bug fixes, Security fixes, Patches etc)
docker run -it --rm sles_12_base:latest sh -c 'zypper lu -a’
• “Требуется внимание оператора” => Jira Task
• Обновление базового образа
Docker Base Image
• Обновления (Bug fixes, Security fixes, Patches etc)
docker run -it --rm sles_12_base:latest sh -c 'zypper lu -a’
• “Требуется внимание оператора” => Jira Task
• Обновление базового образа(+контейнеры)
Docker Images
• Обновления (Bug fixes, Security fixes, Patches etc)
docker run -it --rm sles_12_base:latest sh -c 'zypper lu -a’
• “Требуется внимание оператора” => Jira Task
• Обновление базового образа(+контейнеры)
• Следить за “свежестью пакетов” перед выкладкой
сервиса/образа (RPM based)
docker_build
docker_build
• Сгенерировать структуру директорий, конфиги
docker_build
• Сгенерировать структуру директорий, конфиги
• Сгенерировать инструкцию(Dockerfile_source)
docker_build
• Сгенерировать структуру директорий, конфиги
• Сгенерировать инструкцию(Dockerfile_source)
• Доставить исполняемые файлы
docker_build
• Сгенерировать структуру директорий, конфиги
• Сгенерировать инструкцию(Dockerfile_source)
• Доставить исполняемые файлы
• Выполнить сборку
docker_build
• Сгенерировать структуру директорий, конфиги
• Сгенерировать инструкцию(Dockerfile_source)
• Доставить исполняемые файлы
• Выполнить сборку
• Отправить результат в Registry(y/n)
docker_build
• Сгенерировать структуру директорий, конфиги
• Сгенерировать инструкцию(Dockerfile_source)
• Доставить исполняемые файлы
• Выполнить сборку
• Отправить результат в Registry(y/n)
• Сообщить о результате
* Обязательно: работать в режиме cli
docker_build
Мониторинг
Мониторинг: контейнер
• Docker CLI внутри
Мониторинг: контейнер
• Docker CLI внутри
• Снимаем то же, что и docker stats: CPU/MEM
Мониторинг: контейнер
• Docker CLI внутри
• Снимаем то же, что и docker stats: CPU/MEM
• SAR:
$ sar -A -s %s 60 1 -f /var/log/sa/sa%s
Мониторинг: контейнер
• Docker CLI внутри
• Снимаем то же, что и docker stats: CPU/MEM
• SAR:
$ sar -A -s %s 60 1 -f /var/log/sa/sa%s
• Отсылаем всё в Graphite
Мониторинг: контейнер
• Docker CLI внутри
• Снимаем то же, что и docker stats: CPU/MEM
• SAR:
$ sar -A -s %s 60 1 -f /var/log/sa/sa%s
• Отсылаем всё в Graphite
• Мониторим контейнер и его статус Zabbix’ом
Grafana: Host, Mem
Grafana: Host, CPU
Grafana: Host, Net
Grafana: Container, Mem
Grafana: Container, CPU
baDocker: webUI
baDocker: Требования
• Clientless
baDocker: Требования
• Clientless
• Управление OpenRegistry (v1, v2)
baDocker: Требования
• Clientless
• Управление OpenRegistry (v1, v2)
• Информация о
- хостах
- контейнерах
- сервисах, версиях
baDocker: Требования
• Clientless
• Управление OpenRegistry (v1, v2)
• Информация о
- хостах
- контейнерах
- сервисах, версиях
• Планировщик заданий
baDocker: Требования
• Clientless
• Управление OpenRegistry (v1, v2)
• Информация о
- хостах
- контейнерах
- сервисах, версиях
• Планировщик заданий
• Dashboard
baDocker: Hosts Summary
baDocker: Host Details
baDocker: Terminal
baDocker: Service
baDocker: Service HowTo
Postmortem Заключение
• Искать свой подход – не наступать на наши грабли
Postmortem Заключение
• Искать свой подход – не наступать на наши грабли
• Велосипед – это отлично, если колеса круглые
Спасибо
Антон Турецкий
a.turetsky@corp.badoo.com
@tyrchenok
@BadooDev
http://habrahabr.ru/company/badoo/
Вопросы?

More Related Content

PDF
Docker & Puppet: как их скрестить и надо ли вам это?
PPTX
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
PDF
Производительность WebGL-приложений / Дмитренко Кирилл (Яндекс)
PDF
My talk at Highload++ 2015
PPTX
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
PDF
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
PPTX
Docker в работе: взгляд на использование в Badoo через год
PPTX
MyRocks Табличный Движок для MySQL / Алексей Майков (Facebook) / Сергей Петру...
Docker & Puppet: как их скрестить и надо ли вам это?
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Производительность WebGL-приложений / Дмитренко Кирилл (Яндекс)
My talk at Highload++ 2015
Как SRE следит за стабильностью и скоростью HeadHunter / Антон Иванов (HeadHu...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Docker в работе: взгляд на использование в Badoo через год
MyRocks Табличный Движок для MySQL / Алексей Майков (Facebook) / Сергей Петру...

What's hot (20)

PPTX
Денис Иванов
PDF
Денис Иванов
PDF
Андрей Ситник
PPTX
Антон Турецкий
PPTX
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
PDF
Архитектура хранения фотографий в Badoo
PPTX
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
PPTX
Евгений Потапов (Сумма Айти)
PDF
Android Cloud... точнее Cloud из Android / Охрименко Алексей (Acronis)
PPSX
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
PDF
Где живут Ваши объявления / Тюрин Михаил (Avito)
PDF
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)
PPTX
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
PDF
Архитектура HAWQ / Алексей Грищенко (Pivotal)
PPTX
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
PPTX
OpenResty: превращаем NGINX в полноценный сервер приложений / Владимир Прота...
PPTX
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...
PDF
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...
PDF
Клиентские приложения под нагрузкой (HighLoad 2014)
PPTX
Автоматизация тестирования клиентской производительности / Николай Лавлинский...
Денис Иванов
Денис Иванов
Андрей Ситник
Антон Турецкий
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
Архитектура хранения фотографий в Badoo
Дизайн REST API для высокопроизводительных систем / Александр Лебедев (Новые ...
Евгений Потапов (Сумма Айти)
Android Cloud... точнее Cloud из Android / Охрименко Алексей (Acronis)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Где живут Ваши объявления / Тюрин Михаил (Avito)
Релиз инжиниринг Mail.ru, взгляд изнутри / Максим Глеков (Mail.Ru Group)
Переезжаем с Zabbix на Prometheus / Василий Озеров (fevlake)
Архитектура HAWQ / Алексей Грищенко (Pivotal)
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
OpenResty: превращаем NGINX в полноценный сервер приложений / Владимир Прота...
Тестирование через мониторинг или холакратия на практике / Максим Чистяков (U...
Tempesta FW: challenges, internals, use cases / Александр Крижановский (Tempe...
Клиентские приложения под нагрузкой (HighLoad 2014)
Автоматизация тестирования клиентской производительности / Николай Лавлинский...
Ad

Viewers also liked (20)

PDF
Как мы сделали ровную балансировку нагрузки на фронтенд-кластере / Насретдино...
PDF
Сага о кластере. Все что вы хотели знать про горизонтальное масштабирование в...
PPTX
Как устроен поиск / Андрей Аксенов (Sphinx)
PDF
Как балансировать на «сетевом» канате под куполом тяжелой нагрузки? / Сергей ...
PDF
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
PPTX
Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)
PPTX
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...
PDF
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)
PPT
Tarantool: как сэкономить миллион долларов на базе данных на высоконагруженно...
PPTX
101 способ приготовления RabbitMQ и немного о pipeline архитектуре / Филонов ...
PDF
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...
PDF
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...
PDF
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)
PPTX
Ускорение показа превью изображений в Яндекс.Диске / Сергей Нечаев (Яндекс)
PPTX
Скорость с доставкой до пользователя / Анатолий Орлов (Self Employed), Денис ...
PPTX
Инструменты высоконагруженных проектов - кэширование и очереди, Вячеслав Моск...
PPTX
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
PDF
Реализация восстановления после аварий / Сергей Бурладян (Avito)
PDF
Управление производительностью на базе HP Performance Center. Опыт Альфа-банк...
PDF
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
Как мы сделали ровную балансировку нагрузки на фронтенд-кластере / Насретдино...
Сага о кластере. Все что вы хотели знать про горизонтальное масштабирование в...
Как устроен поиск / Андрей Аксенов (Sphinx)
Как балансировать на «сетевом» канате под куполом тяжелой нагрузки? / Сергей ...
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
Как устроена MySQL-репликация / Андрей Аксенов (Sphinx)
Какие бывают провайдеры услуг дата-центров и как выбрать оптимальный? / Игорь...
Осваиваем Tarantool 1.6 / Евгений Шадрин (Sberbank Digital Ventures)
Tarantool: как сэкономить миллион долларов на базе данных на высоконагруженно...
101 способ приготовления RabbitMQ и немного о pipeline архитектуре / Филонов ...
Кэширование данных в web приложениях. Использование memcached / Юрий Красноще...
Бинарные (файловые) хранилища: страшная сказка с мрачным концом / Даниил Подо...
С чего начать внедрение Hadoop в компании / Алексей Еремихин (Badoo)
Ускорение показа превью изображений в Яндекс.Диске / Сергей Нечаев (Яндекс)
Скорость с доставкой до пользователя / Анатолий Орлов (Self Employed), Денис ...
Инструменты высоконагруженных проектов - кэширование и очереди, Вячеслав Моск...
Настройка и оптимизация высоконагруженных J2EE веб-приложений / Шамим Ахмед (...
Реализация восстановления после аварий / Сергей Бурладян (Avito)
Управление производительностью на базе HP Performance Center. Опыт Альфа-банк...
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
Ad

Similar to Docker в работе: взгляд на его использование в Badoo через год / Турецкий Антон (Badoo) (20)

PPTX
Введение в Docker
PDF
Docker - счастье для хомячка или ника?
PDF
Доклад "Docker в Badoo: от восторгов к внедрению" на DevOps Meetup
PDF
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
PDF
Как не стать рабом облака. PaaS 2.0 с Docker
PPTX
PDF
Andrii Medvedchuk "Kubernetes and Docker Basics for Running Web Apps"
PDF
Docker & puppet - как их скрестить и надо ли вам это, Антон Турецкий (Badoo)
PDF
Docker & Puppet - как их скрестить и надо ли вам это, Антон Турецкий (Badoo)
PDF
Docker for JS people
PDF
Кратчайшее введение в docker по-русски
PPTX
Docker & Badoo: 
никогда не останавливайся на достигнутом
PDF
Автоматизируй это. Кирилл Тихонов ➠ CoreHard Autumn 2019
PDF
Локальное окружение на Docker
PDF
obzor-tiekhnologhii-kontieinierov
ODP
My talk on Docker, Youcon 2015
PPTX
Docker + Selenium Webdriver в рамках Continuous Integration
PDF
My talk on Docker from Moscow Django Meetup #25
PPTX
Docker + Selenium Webdriver в рамках Continuous Integration
Введение в Docker
Docker - счастье для хомячка или ника?
Доклад "Docker в Badoo: от восторгов к внедрению" на DevOps Meetup
Aviasales: миграция поискового движка в docker / Дмитрий Кузьменков (Aviasales)
Как не стать рабом облака. PaaS 2.0 с Docker
Andrii Medvedchuk "Kubernetes and Docker Basics for Running Web Apps"
Docker & puppet - как их скрестить и надо ли вам это, Антон Турецкий (Badoo)
Docker & Puppet - как их скрестить и надо ли вам это, Антон Турецкий (Badoo)
Docker for JS people
Кратчайшее введение в docker по-русски
Docker & Badoo: 
никогда не останавливайся на достигнутом
Автоматизируй это. Кирилл Тихонов ➠ CoreHard Autumn 2019
Локальное окружение на Docker
obzor-tiekhnologhii-kontieinierov
My talk on Docker, Youcon 2015
Docker + Selenium Webdriver в рамках Continuous Integration
My talk on Docker from Moscow Django Meetup #25
Docker + Selenium Webdriver в рамках Continuous Integration

More from Ontico (20)

PDF
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
PDF
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
PPTX
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
PDF
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
PDF
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
PDF
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PDF
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
PPTX
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
PPTX
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
PDF
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
PPTX
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
PPTX
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
PDF
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
PPT
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
PPTX
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
PPTX
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
PPTX
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
PDF
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
PDF
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
PPTX
Java и Linux — особенности эксплуатации / Алексей Рагозин (Дойче Банк)
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Java и Linux — особенности эксплуатации / Алексей Рагозин (Дойче Банк)

Docker в работе: взгляд на его использование в Badoo через год / Турецкий Антон (Badoo)