[Перевод] Введение в современную сетевую балансировку и проксирование


Недавно я осознал нехватку вводных обучающих материалов о современной сетевой балансировке и проксировании. Я подумал: «Почему так? Балансировка нагрузки — одна из ключевых концепций для построения надёжных распределённых систем. Ведь должна быть доступна качественная информация об этом?» Я поискал и обнаружил, что информации мало. Статьи в Википедии о балансировке и прокси-серверах содержат обзоры некоторых концепций, но не могут похвастаться последовательным описанием предмета, особенно в том, что касается современных микросервисных архитектур. Поиск в Google информации о балансировке в основном возвращает сайты вендоров, заполненные модными терминами и скупые на подробности.


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

Читать дальше →

Обзор лучших докладов с HighLoad++ 2017

В ближайших нескольких статьях я расскажу о лучших (по мнению участников) докладах HighLoad++ 2017. Организаторы любезно открыли доступ к видеозаписям, которые вы сможете прямо тут и посмотреть.

Goth2Boss: ломка и отходняки при переходе из инженера в тимлиды / Артем Каличкин




Для меня это открытие года — на мощной технологической конференции первое место занимает доклад, хоть и от технаря, но про УПРАВЛЕНИЕ. Конечно можно рассуждать на тему того, что гуманитарии более охотно ставят оценки и по-умолчанию более лояльная аудитория, но факт остаётся фактом.
Читать дальше →

Как убить технаря в тимлиде

В IT линейных руководителей и тимлидов традиционно набирают из лучших инженеров. Их работа теперь состоит совсем в другом: управлять людьми и взаимодействовать с другими командами и организациями. Исходный же посыл «я лучше знаю, как нужно» часто приводит к совмещению в одном лидере одновременно двух крайностей: отсутствия делегирования и тотального контроля. И то, и другое вовсе не оставляет ни времени, ни сил на управление. О том, как со всем этим справиться и какие еще препятствия могут встретиться на пути новоиспеченного руководителя, на основе собственного опыта и собственноручно набитых шишек расскажет Александр Трофимов из Лаборатории Касперского.


В основе публикации — расшифровка доклада Александра Трофимова с HighLoad++ 2017
Читать дальше →

Тесты на знание Python, PHP, Golang и DevOps: разбор викторины AvitoQuiz на Highload

Конференция Highload++ 2017 отгремела, и это было круто — как всегда. Мы пересматриваем доклады, вовсю пользуемся опытом, которым с нами поделились коллеги и с удовольствием вспоминаем разные активности, которые проводились вне зоны докладов.


На нашем стенде, например, можно было пройти тест на знание одного из языков программирования (Python, Go, PHP) или тест для DevOps и получить красочную тематическую футболку. Сегодня хотим предложить вам ещё раз окунуться в атмосферу конференции и разобрать ответы на самые Highload-задачи из нашего теста. А может, вы сможете решить их, не заглядывая под спойлер?


Enjoy!


Читать дальше →

Превращаем спикеров в ораторов на примере HighLoad++

Привет! Я диктор Чумак и я помогаю людям достигать большего с помощью инструмента, который всегда с собой, — способности говорить.

Кто-то из вас был на моем тренинге по публичным выступлениям перед конференцией HighLoad++, кто-то нет, но это не страшно. Мы устроим его прямо здесь, на страницах Хабра. В последующих публикациях я буду разбирать выступления с HighLoad++ в разрезе ораторского мастерства.



Содержательную часть я затрагивать не буду, в ней вы, очевидно, разбираетесь лучше меня. Я обозначу хорошие моменты выступлений и «точки роста» — проблемные места, исправив которые, автор доклада сможет стать более эффективным спикером.
Читать дальше →

Список полезных идей для высоконагруженных сервисов

В этой статье я решил собрать сборную солянку из советов о том, как разрабатывать высоконагруженные сервисы, полученных практическим путем. Для каждого совета я постараюсь приводить небольшое обоснование, без подробностей (иначе статья бы получилась бы сравнима по размеру с войной и миром). Поскольку обоснований я буду приводить не очень много, не стоит воспринимать эту статью, как догму — в каждом конкретном случае приведенные здесь советы могут быть вредны. Всегда думайте своей головой перед тем, как что-то делать.

1. Думайте своей головой и проверяйте факты


Это самое важное. Для вас не должно существовать безусловных авторитетов. Если кто-либо говорит полную чушь, или говорит что-то, что противоречит вашей практике — не прислушивайтесь к таким советам, и не важно, насколько этот человек известный и уважаемый. Если вы разрабатываете большую систему, и она не будет работать хорошо, то спрашивать будут с вас и в данном случае «мы следовали лучшим мировым практикам» оправданием не является. Умение применять нужные технологии в нужном месте и делает вас ценным специалистом, а не слепое следование чьим-то советам — для этого как раз квалификации не требуется.
Читать дальше →

Разбор задач викторины Postgres Pro на Highload++ 2017

На Higload++ 2017 года в Сколково наша компания Postgres Professional снова провела викторину с традиционной раздачей ништяков, в качестве которых выступили билеты на февральский PgConf.Russia 2018.

В этой статье разбираются вопросы викторины.


Читать дальше →

Архитектура хранения и отдачи фотографий в Badoo



Артем Денисов ( bo0rsh201, Badoo)


Badoo — это крупнейший в мире сайт знакомств. На данный момент у нас зарегистрировано порядка 330 миллионов пользователей по всему миру. Но, что гораздо более важно в контексте нашего сегодняшнего разговора, — это то, что мы храним около 3 петабайт пользовательских фотографий. Каждый день наши пользователи заливают порядка 3,5 миллионов новых фотографий, и нагрузка на чтение составляет порядка 80 тысяч запросов в секунду. Это достаточно много для нашего бэкенда, и с этим иногда бывают трудности.

image

Я расскажу про дизайн этой системы, которая хранит и отдает фотки в целом, и приведу на нее взгляд с точки зрения разработчика. О том, как она развивалась, будет краткая ретроспектива, где я основные вехи обозначу, но уже более подробно буду говорить только о тех решениях, которые мы сейчас используем.
Читать дальше →

[Перевод] Сравнение производительности сетевых решений для Kubernetes



Kubernetes требует, чтобы каждый контейнер в кластере имел уникальный, маршрутизируемый IP. Kubernetes не назначает IP-адреса сам, оставляя эту задачу сторонним решениям.

Цель этого исследования — найти решение с наименьшими задержками, наибольшей пропускной способностью и самой небольшой стоимостью настройки. Поскольку наша нагрузка зависит от задержек, мы измеряем задержки высоких перцентилей при достаточно активной сетевой нагрузке. В частности, мы сфокусировались на производительности в районе 30-50 процентов от максимальной нагрузки, поскольку это лучше всего отражает типовые ситуации для неперегруженных систем. Читать дальше →

История хранилища картинок Avito



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

Avito развивался стремительно с первых дней. Например, скорость загрузки новых картинок для объявлений выросла в первые годы в несколько раз. Это требовало от нас на начальном этапе решать вопросы, связанные с архитектурой, максимально оперативно и эффективно, в условиях ограниченных ресурсов. Кроме того, мы всегда отдавали предпочтение простым решениям, требующим мало ресурсов на поддержку. Принцип KISS («Keep it short and simple») — это до сих пор одна из ценностей нашей компании.
Читать дальше →
  • Новее
  • 1


Последние посты