# Größe des App Service

## Grundlagen

SCEPman hängt hauptsächlich von den CPU-Ressourcen ab. Speicher und Festplatte sind viel weniger wichtig.

Eine SCEPman-Instanz (Version 3.0 und neuer) in einem Azure P0V3 App Service Plan (195 ACUs) kann unter üblichen Bedingungen etwa 4000 Anfragen pro Minute bedienen. Anfragen sind

* SCEP-Ausstellungsanfragen und
* OCSP-Anfragen.

Das bedeutet, dass SCEPman etwa 20 Anfragen pro Minute pro ACU bedienen kann.

Da ein Zertifikat einmal registriert wird, seine Gültigkeit aber viele Male überprüft wird, gibt es insgesamt deutlich mehr OCSP-Anfragen als SCEP-Anfragen. Daher sollten Sie Ihre SCEPman-Instanz anhand Ihrer OCSP-Anfragen dimensionieren.

## Abhängigkeiten

Die Auslastung Ihres SCEPman-Dienstes hängt von mehreren Faktoren ab und variiert in den verschiedenen Umgebungen. Wichtige Abhängigkeiten sind:

1. Verteilung der Anfragen
2. Häufigkeit der Anmeldungen bei Netzwerkressourcen
3. Häufigkeit der Zertifikatsanforderungen/-erneuerungen

Insbesondere die Verteilung der Anfragen ist sehr wichtig. Wenn alle Clients gleichzeitig Anfragen stellen, werden Ihre SCEPman-Instanzen stark belastet. Sie sollten darauf hinwirken, dass SCEPman SCEP-Anfragen in allen Fällen in weniger als einer Minute beantwortet.

{% hint style="warning" %}
Bitte weisen Sie SCEP-Profile nicht gleichzeitig einer großen Anzahl von Benutzern/Geräten zu, da dies zu einer Anfrage-Spitze bei Ihren SCEPman-Instanzen führen kann.
{% endhint %}

## Empfehlung

Wir empfehlen als Ausgangspunkt die folgende Dimensionierung in Azure Compute Units (ACU) für die Azure App Service Plans:

| Anzahl der Benutzer/Clients |              Einzelnes Design             |               Georedundantes Design               |
| :-------------------------: | :---------------------------------------: | :-----------------------------------------------: |
|        < 5000 Clients       |    <p>\~100 ACUs<br>(z. B. 1 x S1)</p>    |     <p>2 x \~100 ACUs</p><p>(z. B. 2 x S1)</p>    |
|       < 10.000 Clients      |  <p>\~200 ACUs</p><p>(z. B. 1 x P0V3)</p> |    <p>2 x \~200 ACUs</p><p>(z. B. 2 x P0V3)</p>   |
|       < 25.000 Clients      |  <p>\~400 ACUs</p><p>(z. B. 2 x P0V3)</p> |     <p>2 x \~400 ACUs<br>(z. B. 4 x P0V3)</p>     |
|       < 50.000 Clients      |  <p>\~800 ACUs</p><p>(z. B. 4 x P0V3)</p> |     <p>2 x \~800 ACUs<br>(z. B. 8 x P0V3)</p>     |
|      < 100.000 Clients      | <p>\~1600 ACUs</p><p>(z. B. 4 x P1V3)</p> |   <p>2 x \~1600 ACUs</p><p>(z. B. 8 x P1V3)</p>   |
|      > 100.000 Clients      | <p>\~3200 ACUs</p><p>(z. B. 4 x P2V3)</p> | <p>2 x \~3200 ACUs</p><p>(z. B. 2 x 4 x P2V3)</p> |

Basierend auf diesen Empfehlungen können Sie Ihren Datenverkehr überwachen und sehen, ob Sie wie im Abschnitt [Feinabstimmung](#fine-tuning) unten beschrieben herunterskalieren können.

## Azure-Kostenprognose

Die Hauptkosten in Azure entstehen für den oder die Azure App Service Plan(s). Sie können Ihre Kosten aus den Anforderungen in der obigen Tabelle und [Ihrer Azure-Preisliste](https://azure.microsoft.com/en-us/pricing/calculator/) oder der allgemeinen, nicht rabattierten [App Service Pricing](https://azure.microsoft.com/en-us/pricing/details/app-service/windows/) Übersicht ableiten.

Die zusätzlichen Azure-Ressourcen (Key Vault, Storage Account, Log Analytics, Netzwerkressourcen für private Endpunkte) spielen bei den Kosten nur eine geringe Rolle. Abhängig von den Anwendungsfällen in Ihrer Umgebung sollten Sie für diese zusätzlichen Azure-Ressourcen zusätzliche 5 % bis 25 % zusätzlich zu den Kosten des App Service Plans einplanen.

{% hint style="info" %}
Diese Kostenprognose ist nur ein grober Richtwert, um Ihnen bei der Schätzung der Azure-Kosten zu helfen. Sie kann in verschiedenen Umgebungen erheblich variieren.
{% endhint %}

## Feinabstimmung

Jede Umgebung hat über den Tag hinweg ihre eigene Lastverteilung. In vielen Umgebungen erzeugt der Morgen (Arbeitsbeginn) eine Lastspitze bei Ihrem SCEPman.

### Manuelle Skalierung

Sie können die Rechenleistung Ihres App Service mit den Azure App Service Scale-Out-Funktionen an Ihre individuelle tägliche Lastverteilung anpassen. Z. B. könnten Sie morgens von 08:00–10:00 2 x S1 definieren, um die morgendliche Spitze abzudecken, während Sie für den Rest des Tages auf 1 x S1 reduzieren.

### Automatische Skalierung

Alternativ können Sie die Azure App Autoscaling-Funktion verwenden, um sich an die benötigten Ressourcen anzupassen. Mehr dazu erfahren Sie unter [Autoskalierung](https://docs.scepman.com/de/azure-konfiguration/azure-sizing/autoscaling).

### Manuelle vs. automatische Skalierung

Wenn Sie Ihre Last gut vorhersehen können (z. B. abgeleitet aus der Lasthistorie), empfehlen wir die manuelle Skalierung gegenüber der automatischen Skalierung, da die automatische Skalierung träge sein muss (Hysterese), um ein ständiges Hin- und Herschalten zwischen den Skalierungsstufen zu vermeiden.
