Как масштабировать экземпляр Службы Azure SignalR?
В этой статье показано, как масштабировать экземпляр Службы Azure SignalR. Существует два сценария масштабирования: вертикальное увеличение масштаба и горизонтальное увеличение масштаба.
- Вертикальное увеличение масштаба — это увеличение числа единиц, подключений, сообщений и т. п. Вертикально масштаб можно увеличить, изменив ценовую категорию с "Бесплатный" на "Стандартный".
- Горизонтальное увеличение масштаба — это увеличение количества используемых единиц SignalR. Горизонтально масштаб можно увеличить до 100 единиц. Для масштабирования доступны ограниченные параметры единицы: 1, 2, 3, 4, 5, 6, 7, 8, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 и 100 единиц для одного экземпляра Служба SignalR. Если вы хотите масштабировать более 100 единиц, Premium_P2 SKU предлагает расширенные возможности.
Для применения параметров масштабирования требуется несколько минут. В редких случаях применение может занять около 30 минут. Масштабирование не требует изменения кода или повторного развертывания серверного приложения.
Сведения о ценах и емкостях отдельных категорий Службы SignalR см. здесь.
Примечание.
Изменение Служба SignalR с уровня "Бесплатный" на "Стандартный" или "Премиум" или наоборот, IP-адрес общедоступной службы будет изменен и обычно занимает 30–60 минут для распространения изменений на DNS-серверы по всему Интернету. В течение этого времени служба может быть недоступна. Как правило, изменять ценовую категорию слишком часто не рекомендуется.
Увеличение масштаба портал Azure
В браузере откройте портал Azure.
На странице Служба SignalR в меню слева выберите "Увеличить масштаб".
Нажмите кнопку "Изменить" и выберите "Стандартный " в всплывающей колонке.
Выберите Сохранить.
Горизонтальное масштабирование портал Azure
В браузере откройте портал Azure.
На странице Служба SignalR в меню слева выберите "Горизонтальное увеличение масштаба".
Выберите единицу в секторе ручного масштабирования .
Выберите Сохранить.
Масштабирование с помощью интерфейса командной строки Azure
Этот скрипт создает новый ресурс Службы SignalR категории Бесплатный и новую группу ресурсов, а затем масштабирует его до категории Стандартный.
#!/bin/bash
# Generate a unique suffix for the service name
let randomNum=$RANDOM*$RANDOM
# Generate a unique service and group name with the suffix
SignalRName=SignalRTestSvc$randomNum
#resource name must be lowercase
mySignalRSvcName=${SignalRName,,}
myResourceGroupName=$SignalRName"Group"
# Create resource group
az group create --name $myResourceGroupName --location eastus
# Create the Azure SignalR Service resource
az signalr create \
--name $mySignalRSvcName \
--resource-group $myResourceGroupName \
--sku Free_F1 \
--service-mode Default
# Scale up to Standard Tier, and scale out to 50 units
az signalr update \
--name $mySignalRSvcName \
--resource-group $myResourceGroupName \
--sku Standard_S1 \
--unit-count 50
Запишите фактическое имя, созданное для новой группы ресурсов. При удалении всех ресурсов вы будете использовать это имя группы ресурсов.
Очистка развертывания
Выполнив пример сценария, можно удалить группу ресурсов и все связанные с ней ресурсы при помощи приведенной ниже команды.
az group delete --name myResourceGroup
Сравнение ценовых категорий
Дополнительные сведения, в том числе доступное количество сообщений и подключений для различных ценовых категорий, см. на странице цен на Службу SignalR.
Таблицу ограничений и квот по каждой ценовой категории см. в разделе Ограничения Службы SignalR.
Расширенная поддержка крупных экземпляров с помощью SKU Premium_P2
Новый номер SKU Premium_P2 предназначен для упрощения обширной масштабируемости для сценариев с высоким спросом. Этот номер SKU позволяет масштабироваться в 100, 200, 300, 400, 500, 600. 700, 800, 900, 1000 единиц для одного экземпляра Служба SignalR. Это улучшение позволяет обрабатывать до одного миллиона одновременных подключений, обслуживая крупномасштабные потребности в обмене данными в режиме реального времени.
Вы можете масштабировать номер SKU для Premium_P2 с помощью портал Azure или Azure CLI.
Уровень Premium_P2 использует другую архитектуру для управления большим количеством базовых ресурсов. Таким образом, ожидается, что операции масштабирования этого уровня могут занять больше времени по сравнению с теми, которые используются в небольших номерах SKU.
Примечание.
Помните, что ограничение квоты по умолчанию ограничивает количество единиц SignalR в 150 единиц на подписку в каждом регионе. Это мягкое ограничение и может быть увеличено по запросу. Для этого просто отправьте запрос в службу поддержки, чтобы запросить корректировку этой квоты.
Следующие шаги
С помощью этого руководства вы узнали, как масштабировать один экземпляр Службы SignalR.
Автомасштабирование поддерживается в Служба Azure SignalR категории "Премиум".
Для сценариев масштабирования, сегментирования и перехода в другой регион также поддерживаются несколько конечных точек.