# Dimensionnement d’App Service

## Notions de base

SCEPman dépend principalement des ressources CPU. La mémoire et le disque sont beaucoup moins importants.

Une instance SCEPman (version 3.0 et plus récente) dans un plan Azure App Service P0V3 (195 ACU) peut traiter environ 4000 requêtes par minute dans des conditions normales. Les requêtes sont

* des requêtes d’émission SCEP et
* des requêtes OCSP.

Cela signifie que SCEPman peut traiter environ 20 requêtes par minute par ACU.

Comme un certificat est inscrit une fois, mais que sa validité est vérifiée de nombreuses fois, il y aura beaucoup plus de requêtes OCSP que de requêtes SCEP au total. Par conséquent, vous devez dimensionner votre instance SCEPman en fonction de vos requêtes OCSP.

## Dépendances

La charge de votre service SCEPman dépend de plusieurs facteurs et varie selon les différents environnements. Les dépendances importantes sont :

1. Répartition des requêtes
2. Fréquence des connexions aux ressources réseau
3. Fréquence des demandes/renouvellements de certificats

La répartition des requêtes est particulièrement importante. Si tous les clients effectuent des requêtes en même temps, vos instances SCEPman subiront une charge importante. Vous devez vous efforcer de faire en sorte que SCEPman réponde aux requêtes SCEP en moins d’une minute dans tous les cas.

{% hint style="warning" %}
Veuillez ne pas attribuer les profils SCEP à un grand nombre d’utilisateurs/appareils en même temps, car cela peut entraîner un pic de requêtes sur vos instances SCEPman.
{% endhint %}

## Recommandation

Nous recommandons, comme point de départ, le dimensionnement suivant en unités de calcul Azure (ACU) pour les plans Azure App Service :

| Nombre d’utilisateurs/clients |             Conception simple             |              Conception géoredondante             |
| :---------------------------: | :---------------------------------------: | :-----------------------------------------------: |
|         < 5000 clients        |    <p>\~100 ACU<br>(p. ex. 1 x S1)</p>    |     <p>2 x \~100 ACU</p><p>(p. ex. 2 x S1)</p>    |
|        < 10.000 clients       |  <p>\~200 ACU</p><p>(p. ex. 1 x P0V3)</p> |    <p>2 x \~200 ACU</p><p>(p. ex. 2 x P0V3)</p>   |
|        < 25.000 clients       |  <p>\~400 ACU</p><p>(p. ex. 2 x P0V3)</p> |     <p>2 x \~400 ACU<br>(p. ex. 4 x P0V3)</p>     |
|        < 50.000 clients       |  <p>\~800 ACU</p><p>(p. ex. 4 x P0V3)</p> |     <p>2 x \~800 ACU<br>(p. ex. 8 x P0V3)</p>     |
|       < 100.000 clients       | <p>\~1600 ACU</p><p>(p. ex. 4 x P1V3)</p> |   <p>2 x \~1600 ACU</p><p>(p. ex. 8 x P1V3)</p>   |
|       > 100.000 clients       | <p>\~3200 ACU</p><p>(p. ex. 4 x P2V3)</p> | <p>2 x \~3200 ACU</p><p>(p. ex. 2 x 4 x P2V3)</p> |

Sur la base de ces recommandations, vous pouvez surveiller votre trafic et voir si vous pouvez réduire la capacité comme décrit dans la section [Optimisation fine](#fine-tuning) ci-dessous.

## Prévision des coûts Azure

Les principaux coûts Azure concerneront le ou les plans Azure App Service. Vous pouvez déduire votre coût à partir des exigences du tableau ci-dessus et [votre grille tarifaire Azure](https://azure.microsoft.com/en-us/pricing/calculator/) ou de l’aperçu générique non remisé [Tarification App Service](https://azure.microsoft.com/en-us/pricing/details/app-service/windows/) .

Les ressources Azure supplémentaires (Key Vault, Storage Account, Log Analytics, ressources réseau pour les points de terminaison privés) jouent un rôle mineur dans le coût. Selon les cas d’usage dans votre environnement, vous devez prévoir 5 % à 25 % supplémentaires en plus du coût du plan App Service pour ces ressources Azure additionnelles.

{% hint style="info" %}
Cette projection des coûts n’est qu’une estimation approximative destinée à vous aider à évaluer le coût d’Azure. Elle peut varier considérablement selon les environnements.
{% endhint %}

## Optimisation fine

Chaque environnement a sa propre répartition de charge au cours de la journée. Dans de nombreux environnements, le matin (début de journée de travail) génère un pic de charge sur votre SCEPman.

### Mise à l’échelle manuelle

Vous pouvez adapter la puissance de calcul de votre App Service à votre répartition quotidienne de charge individuelle grâce aux fonctionnalités de mise à l’échelle d’Azure App Service. Par exemple, vous pourriez définir 2 x S1 le matin de 08:00 à 10:00 pour couvrir le pic du matin, puis réduire à 1 x S1 pour le reste de la journée.

### Mise à l’échelle automatique

Vous pouvez également utiliser la fonctionnalité de mise à l’échelle automatique d’Azure App pour adapter les ressources nécessaires. En savoir plus à ce sujet dans [Mise à l’échelle automatique](https://docs.scepman.com/fr/configuration-azure/azure-sizing/autoscaling).

### Mise à l’échelle manuelle vs. automatique

Si vous êtes en mesure de bien prévoir votre charge (par exemple, à partir de l’historique de charge), nous recommandons la mise à l’échelle manuelle plutôt que la mise à l’échelle automatique, car cette dernière doit réagir lentement (hystérésis) afin d’éviter des allers-retours entre les niveaux de dimensionnement.
