|
| 1 | +--- |
| 2 | +title: Scale an instance of Azure SignalR Service |
| 3 | +description: Learn how to scale an Azure SignalR Service instance to add or reduce capacity, through Azure portal or Azure CLI. |
| 4 | +author: sffamily |
| 5 | +ms.service: signalr |
| 6 | +ms.topic: conceptual |
| 7 | +ms.date: 11/21/2019 |
| 8 | +ms.author: zhshang |
| 9 | +--- |
| 10 | +# How to scale an Azure SignalR Service instance? |
| 11 | +This article shows you how to scale your instance of Azure SignalR Service. There are two scenarios for scaling, scale up and scale out. |
| 12 | + |
| 13 | +* [Scale up](https://en.wikipedia.org/wiki/Scalability#Horizontal_and_vertical_scaling): Get more units, connections, messages, and more. You scale up by changing the pricing tier from Free to Standard. |
| 14 | +* [Scale out](https://en.wikipedia.org/wiki/Scalability#Horizontal_and_vertical_scaling): Increase the number of SignalR units. You can scale out to as many as 100 units. |
| 15 | + |
| 16 | +The scale settings take a few minutes to apply. They don't require you to change your code or redeploy your server application. |
| 17 | + |
| 18 | +For information about the pricing and capacities of individual SignalR Service, see [Azure SignalR Service Pricing Details](https://azure.microsoft.com/pricing/details/signalr-service/). |
| 19 | + |
| 20 | +> [!NOTE] |
| 21 | +> Changing SignalR Service from **Free** tier to **Standard** tier or vice versa, the public service IP will be changed and it usually takes 3-60 minutes to propagate the change to DNS servers across the entire internet. |
| 22 | +> Your service might be unreachable before DNS gets updated. Generally it’s not recommended to change your pricing tier too often. |
| 23 | +
|
| 24 | + |
| 25 | +## Scale on Azure portal |
| 26 | + |
| 27 | +1. In your browser, open the [Azure portal](https://portal.azure.com). |
| 28 | + |
| 29 | +2. In your SignalR Service page, from the left menu, select **Scale**. |
| 30 | + |
| 31 | +3. Choose your pricing tier, and then click **Select**. You need to set the unit count for **Standard** Tier. |
| 32 | + |
| 33 | +  |
| 34 | + |
| 35 | +4. Click **Save**. |
| 36 | + |
| 37 | +## Scale using Azure CLI |
| 38 | + |
| 39 | +This script creates a new SignalR Service resource of **Free** Tier and a new resource group, and scale it up to **Standard** Tier. |
| 40 | + |
| 41 | +```azurecli-interactive |
| 42 | +#!/bin/bash |
| 43 | +
|
| 44 | +# Generate a unique suffix for the service name |
| 45 | +let randomNum=$RANDOM*$RANDOM |
| 46 | +
|
| 47 | +# Generate a unique service and group name with the suffix |
| 48 | +SignalRName=SignalRTestSvc$randomNum |
| 49 | +#resource name must be lowercase |
| 50 | +mySignalRSvcName=${SignalRName,,} |
| 51 | +myResourceGroupName=$SignalRName"Group" |
| 52 | +
|
| 53 | +# Create resource group |
| 54 | +az group create --name $myResourceGroupName --location eastus |
| 55 | +
|
| 56 | +# Create the Azure SignalR Service resource |
| 57 | +az signalr create \ |
| 58 | + --name $mySignalRSvcName \ |
| 59 | + --resource-group $myResourceGroupName \ |
| 60 | + --sku Free_F1 \ |
| 61 | + --service-mode Default |
| 62 | +
|
| 63 | +# Scale up to Standard Tier, and scale out to 50 units |
| 64 | +az signalr update \ |
| 65 | + --name $mySignalRSvcName \ |
| 66 | + --resource-group $myResourceGroupName \ |
| 67 | + --sku Standard_S1 \ |
| 68 | + --unit-count 50 |
| 69 | +``` |
| 70 | + |
| 71 | +Make a note of the actual name generated for the new resource group. You will use that resource group name when you want to delete all group resources. |
| 72 | + |
| 73 | +[!INCLUDE [cli-script-clean-up](../../includes/cli-script-clean-up.md)] |
| 74 | + |
| 75 | +## Compare pricing tiers |
| 76 | + |
| 77 | +For detailed information, such as included messages and connections for each pricing tier, see [SignalR Service Pricing Details](https://azure.microsoft.com/pricing/details/signalr-service/). |
| 78 | + |
| 79 | +For a table of service limits, quotas, and constraints in each tier, see [SignalR Service limits](../azure-subscription-service-limits.md#azure-signalr-service-limits). |
| 80 | + |
| 81 | +## Next steps |
| 82 | + |
| 83 | +In this guide, you learned about how to scale single SignalR Service instance. |
| 84 | + |
| 85 | +Multiple endpoints are also supported for scaling, sharding and cross-region scenarios. |
| 86 | + |
| 87 | +> [!div class="nextstepaction"] |
| 88 | +> [scale SignalR Service with multiple instances](./signalr-howto-scale-multi-instances.md) |
0 commit comments