Масштабируемость — фундамент serverless-платформ, который позволяет справляться с переменной нагрузкой и фокусироваться на продукте. В статье компания Ably рассказывает, как достигает масштабируемости и как им удается стереть потолок этой метрики.
Это одна из серии статей, объясняющих четыре столпа надежности Ably. Серия посвящена созданию конкретных, объективно проверяемых утверждений о технических характеристиках сервиса. Рекомендуем к чтению.
Ably как serverless-платформа для realtime-месседжинга справляется с вирусным ростом приложений, обеспечивая отказоустойчивость и эластичность без потолка масштаба.
Ключевые моменты:
⚪️ Масштабируемость как столп надежности: позволяет платформе обрабатывать произвольно большие и изменчивые нагрузки без перепроектирования приложений; критически важна для современных serverless-облаков, где управление масштабом передается платформе, освобождая разработчиков от SRE-задач.
⚪️ Вертикальная vs горизонтальная: вертикальная (увеличение мощности компонентов) ограничена и неэластична; горизонтальная (добавление компонентов) обеспечивает динамический рост, необходимый для Ably, с автоматическим выделением ресурсов и распределением нагрузки.
⚪️ Вызовы горизонтального масштаба: не только репликация ресурсов, но и эффективная маршрутизация, балансировка (load balancer) и взаимосвязь для зависимостей (например, fanout сообщений одному каналу для миллионов подписчиков).
⚪️ Измерения масштаба: нет лимитов на количество каналов (единица обработки сообщений), соединений (для коммуникации через каналы) и пропускную способность сообщений (входящих/исходящих); все масштабируется горизонтально.
⚪️ Архитектура: эластичные слои — frontend (stateless обработка соединений via load balancer) и core (stateful каналы via consistent hashing); поддержка высокомасштабного fanout (до миллиардов соединений) через многоуровневое распространение сообщений по регионам.
@DevOpsKaz 😛
