Определение «1 миллион плюс пользователей» расплывчато.Означает ли это, что миллион пользователей одновременно требуют сложного доступа к базе данных или просто миллион пользователей, обращающихся к файлам в хранилище S3?Определение требований к производительности является первым шагом в разработке надежных, безопасных и отказоустойчивых систем.
Ключ к хорошему автоматическому масштабированию имеет несколько факторов:
- Проверка работоспособности.Ваши проверки работоспособности будут определять, когда подсистема балансировки нагрузки начнет отправлять запросы в ваши бэкэнд-экземпляры.Ваши проверки работоспособности должны быть точными при определении того, доступен ли экземпляр для обслуживания и сколько времени ждать, прежде чем проверять работоспособность новых экземпляров (время запуска экземпляра).
- Запуск и настройка экземпляра.Вам нужно, чтобы ваши экземпляры выходили в сеть как можно быстрее.Обычно это означает создание предварительно настроенного AMI, который не требует загрузки и установки обновлений, пакетов или приложений.
- Управление.Внезапное массовое увеличение трафика обычно предсказуемо.Объявления о продуктах, маркетинговые видеоролики и т. Д. Обычно можно запланировать заранее, а предварительные прогревы ваших платформ можно выполнить заранее, а затем отключить после события.
Распространенное заблуждение, связанное с автоматическим масштабированием, заключается в том, что масштабирование можно выполнить мгновенно.,Это не вариант.Чтобы справиться с огромным увеличением трафика, вам необходимо либо предварительно прогреть среду, либо иметь дополнительную избыточную емкость для обработки мгновенных всплесков.
Автоматическое масштабирование хорошо работает с трафиком, который со временем растет и уменьшается, а не все сразу.За исключением серверных платформ, instant on
для вычислительных сервисов отсутствует.