На прошлой неделе прошла конференция Highload++ 2015. Конференция большая. Доклады шли в 5 потоков. Казалось бы выбор большой, но если отбросить секцию менеджмента и секцию фронтовой разработки, то останется PostgreSQL на каждом втором докладе. Один из моих коллег так высказался о конференции: "Highload++ 2015 - 40% PostgreSQL, 40% очереди, 20% приправы".

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

Stack Overflow - It's all about performance!

Пожалуй самый интересный доклад конференции был от Stack Overflow. Их 150 сайтов крутятся на 8 серверах. У них очень короткий цикл разработки фичь: обычно они укладываются в несколько часов. Как они этого добились:

  • Full stack-разработчики. Все кто разрабатывает Stack Overflow умеет делать и фронт и бэк;
  • Отлаженная система раскатывания фичь в прод + использование собственного коммьюнити для тестирования.

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

Такой подход требует высококлассных специалистов. А они стоят дорого. Скорее всего, экономически выгоднее было бы не тратить огромные деньги на разработку, а "залить железом". Но похоже такой подход добавляет проекту некоторую изюминку, которая привлекает к сервису таких же гуру, как и те что работают над ним.

Docker в работе: взгляд на его использование в Badoo через год

До сих пор думаете, что Docker - это панацея? Нет, это всего лишь полезный инструмент со своими багами, сложностями эксплуатации и граблями (куда же без них?). Огромное спасибо Антону, что рассказал о своем опыте эксплуатации Docker в продакшене. А то статьи, которые можно найти, по большей части описывают лишь эксперименты на девелоперских машинках без нагрузки.

Я более чем уверен, что описанные Антоном сложности, которые возникли у них, возникнут в каждом втором проекте на Docker. Сеть, сторадж, мониторинг - есть во всех проектах.

Учебный план для highload гуру

Этого доклада не должно было быть на Highload++. Он ну ни как не вписывался в формат конференции. Тем не менее этот доклад попал в тройку самых интересных докладов. Не смотря на то, что по большей части он состоит из ключевых слов: тем о которых в той или иной степени должен знать любой программист, который хочет расти и развиваться. Слайды доклада доступны здесь.

Возможно, единственная причина, почему я добавил этот доклад в тройку, - это то, что идеи и ощущения профессии Андрея Аксенова полностью совпадают с моими. Я так же как он считаю, что программисту нельзя закрываться в своей области, ему просто необходимо знание во многих областях CS. Возможно на уровне "прочитал статью, попробовал написать пару строк".

По сути этот доклад более жесткая и объемная версия моего поста о слабых сторонах программистов-самоучек.



c