Эта чёрная-чёрная пятница
Хабр, хотим напомнить, что начались скидки Black Friday в России. Как раз к этому событию мы подготовили для вас статью: история появления Black Friday и немного технического материала о том, как официальный сервис онлайн-распродаж blackfridaysale.ru справляется с пиковыми нагрузками. Заглядывайте под кат. И не забудьте воспользоваться скидками!
В начале мая в статье «Облако Microsoft Azure в реальных проектах» мы рассказывали о некоторых компаниях, выбравших Azure в качестве своего облачного сервиса. Одной из этих компаний является Black Friday.
Немного об истории черной пятницы
Впервые фраза «Black Friday» была применена к финансовому кризису: 24 сентября 1869, падение рынка золота в США. Тогда два печально-известных финансиста пытались скупить всё золото штатов, надеясь поднять цену на него и позднее получить большую прибыль.
Наиболее известной версией возникновения сегодняшнего значения Черной пятницы является некая игра слов и фразеологизмов. Предполагается, что после года убыточной работы («in the red» — в долгу, прим. ред.) магазины получат прибыль («went into the black» — станут финансово успешными, прим.ред.) в день после Дня Благодарения, потому что люди потратят много денег на покупку подарков к Рождеству.
Существует еще одна менее известная версия, связанная со скидками на рабов после дня благодарения в еще рабовладельческой Америке.
Однако, на самом деле, история значения термина связана с Филадельфией 1950-х. Ежегодно на следующий день после Дня Благодарения город был переполнен людьми, в основном туристами, собравшимися в преддверии большой футбольной игры. В городе процветало воровство из магазинов, что увеличивало головную боль полиции. Только в конце 1980-х розничные магазины нашли способ превратить черную пятницу в нечто положительное — в то, что сегодня называется Черной пятницей.
Если у вас есть своя теория — делитесь в комментариях.
Мини-интервью с IT-директором blackfridaysale.ru
В этом разделе хотим поделиться с вами небольшим интервью с Александром Усуновым.
Какие нагрузки испытывает BlackFridays в моменты пиковых значений посещаемости сайта? На сколько эти значения отличаются от стандартных?
В обычные дни throughput прыгает от 0.5–3Mbps, в обеденные часы может подниматься до 15–20Mbps. За два-три дня до акции показатели подрастают до 600Mbps и за несколько минут до старта увеличиваются до 1.2–1.5Gbps. Во время старта throughput около 7–8Gbps, максимум 14Gbps. Примерно через 4 часа значение опускается до 3–4Gbps и находится в этих границах до конца акции.
Что вы использовали для распределения неравномерной нагрузки трафика на сайт до того, как решили перейти на Azure?
Мы использовали AWS: OpsWorks, API Gateway, scale группы, Cache кластер, Aurora СУБД и CloudFront.
Чем именно был вызван переход? Главным критерием была экономия средств, времени или чего-то еще?
В первую очередь трудностью оплаты крупных счетов Amazon для юр. лиц из России. Также мы переходили на новую версию фреймворка, искали наиболее подходящие SaaS решения, и специалисты Azure подсказали нам хорошие варианты. Ну и, конечно, экономия средств.
Какие проблемы возникали при переходе?
Невозможность ассоциировать webapp или cdn с доменом, не внеся соответствующих записей в DNS, сильно затруднило гладкий переход. Изначально всё работало ощутимо медленнее, нам пришлось пересмотреть некоторые решения, сейчас никаких проблем с производительностью нет.
Какие пиковые нагрузки выдерживал сайт после переезда? Были ли проблемы с доступностью?
У нас было разделение по регионам и группам для России, Австрии и Германии. На каждую группу приходилось около 7–8Gbps в первые часы после старта. В первые минуты был небольшой лаг на Application Gateway, которые отдавали SSL трафик, их не «прогрели» перед стартом. Но глобально это не сказалось на доступности ресурса.
Сколько времени у вас занимает введение дополнительных серверов в Azure и сколько времени это бы заняло на собственных серверах?
Мы не использовали собственные сервера, разворачивание дополнительных виртуальных машин в Azure занимает у нас немного больше времени, чем это было в AWS, если разворачиваем из темплейта. Порядка 10–15 минут с софтом и нашими приложениями. Если сравнивать разворачивание из образа, то значительно больше времени. Но мы максимально снизили прямое использование виртуальных машин за счет SaaS решений, а те места, где они остались, не требовательны ко времени.
Подробнее про переезд читайте тут.