Freigeben über


Erwägungen zur Kapazitätsplanung für Azure In-Role Cache

Wichtig

Microsoft empfiehlt, alle neuen Entwicklungen azure Redis Cache zu verwenden. Aktuelle Dokumentation und Anleitung zum Auswählen eines Azure Cache-Angebots finden Sie unter Welches Azure Cache-Angebot ist für mich geeignet?

Die erforderliche Kapazität eines In-Role Cachecaches wird durch mehrere Faktoren bestimmt, einschließlich der Datenmenge, die im Cache platziert werden soll, die Häufigkeit und Die Anzahl der Lese- und Schreibvorgänge in den Cache und welche Optionen, z. B. hohe Verfügbarkeit, für den Cache angegeben werden. Nachdem die Cacheanforderungen ermittelt wurden, kann die Cachetopologie konfiguriert werden. Die Topologie des bereitgestellten Cacheclusters hängt von mehreren Faktoren ab, z. B. von der Größe des virtuellen Computers, der Anzahl der bereitgestellten Instanzen und davon, ob es sich bei der Rolle um eine freigegebene Rolle oder eine dedizierte Cacherolle handelt. In diesem Thema wird gezeigt, wie Sie das Arbeitsblatt für die Kapazitätsplanung verwenden, um die erforderliche Kapazität des Caches zu bestimmen, und die Einstellungen, die zum Bereitstellen eines Cacheclusters konfiguriert werden sollen, um die Anforderungen zu erfüllen.

Verwenden der Tabelle des Planungshandbuchs zur Cachekapazität

Das Arbeitsblatt " Kapazitätsplanungshandbuch " ist eine Tabelle, die aus dem Microsoft Download Center heruntergeladen werden kann, und enthält zwei Arbeitsblätter, die verwendet werden können, um die Kapazitätsplanung zu unterstützen: Dedizierte Rolle – Planner und Co-Located Role - Planner. Dedizierte Rolle – Planner bietet Anleitungen zum Erstellen eines dedizierten Rollencacheclusters und co-Located Role – Planner bietet Anleitungen zum Erstellen eines Co-Located Role Cache Cluster.

Topologie der Cacheclusterbereitstellung BESCHREIBUNG

Dedizierter Rollencache

Workerrolleninstanzen werden exklusiv für Caching verwendet.

Zusammengestellter Rollencache

Der Cache verwendet die Ressourcen des virtuellen Computers (Bandbreite, CPU und Arbeitsspeicher) mit der primären Anwendung gemeinsam, die durch die Rolle gehostet wird.

Wenn Ihre Anwendung über nicht verwendeten Arbeitsspeicher in ihren vorhandenen Rollen verfügt, können Sie einen zusammengestellten Rollencachecluster für diese Rollen konfigurieren und diesen zusätzlichen Speicher für Caching verwenden. Wenn nicht genügend zusätzlicher Speicher in den Rollen verfügbar ist, um einen Cachecluster zu unterstützen, können Sie die Rollen horizontal skalieren, oder Sie können eine Cacheworkerrolle hinzufügen und einen dedizierten Rollencachecluster konfigurieren. Dieses Handbuch unterstützt Sie beim Ermitteln der Einstellungen, die für die Bereitstellungstopologie verwendet werden, die die Cacheanforderungen Ihrer Anwendung erfüllt.

In den folgenden Abschnitten wird beschrieben, wie Sie die beiden Arbeitsblätter für die Kapazitätsplanung für dedizierte Rollen und die gemeinsame Zwischenspeicherung von Rollen verwenden.

  • Dedizierte Rolle - Planer

  • Planer für zusammengefasste Rollen

Dedizierte Rolle - Planer

Das Arbeitsblatt "Dedizierte Rolle – Planner" ist das erste Arbeitsblatt im Arbeitsblatt "Kapazitätsplanungshandbuch " und wird verwendet, um die Einstellungen für einen dedizierten Rollencachecluster zu ermitteln. Ein Cachecluster für eine dedizierte Rolle ist ein Cluster, in dem die Workerrolleninstanzen ausschließlich für Caching verwendet werden.

Dedicated Cache Capacity Planner

Das Arbeitsblatt "Dedizierte Rolle – Planner " verwendet mehrere Eingabetypen. Der erste Abschnitt " Eingabe: Datenanforderungen" wird verwendet, um die maximale Datengröße für den Cache zu berechnen. Für bis zu zehn Datentypen können Sie die Angaben Average Object Size (Post-Serialization), Maximum Number of Objects und High Availability Enabled eingeben. Im vorherigen Beispiel wurde nur ein Datentyp modelliert. Die durchschnittliche Größe beträgt 2.560 Bytes mit maximal 100.000 Objekten im Cache. Hohe Verfügbarkeit ist nicht aktiviert.

Der zweite Abschnitt, Eingabe: Durchsatzanforderungen, wird verwendet, um die Bandbreitenanforderungen für den Cache zu berechnen und die Anzahl der Lese-/Sek.-Werte bei der Spitzenlast zu verwenden. In diesem Beispiel beträgt die Spitzenauslastung für Data Type 1 10.000 Lesevorgänge pro Sekunde und 500 Schreibvorgänge pro Sekunde.

Der dritte Abschnitt, Eingabe: Erweiterte Optionen, bietet mehrere zusätzliche Eingabeeinstellungen. Cushion for peak load - data und Cushion for peak load - Throughput stellen einen Puffer für Schwankungen in der Anwendungslast zur Verfügung. Mithilfe dieser Einstellungen kann der gewünschte Puffer auf bequeme Weise für die Menge und den Durchsatz von Daten im Cache vergrößert und verkleinert werden.

Preserve Data across Azure Updates gibt an, ob die Kapazitätsplanungstabelle zusätzliche Kapazität für parallele Upgradeszenarien enthalten soll, wenn die Rollen in einer Upgradedomäne aufgrund eines Updates ausfallen. Wenn Azure die Rollen in einer Upgradedomäne aufgrund eines Updates heruntergefahren, versucht In-Role Cache, die Daten in die anderen Knoten im Cluster zu verschieben, bevor der Knoten offline geht. Wenn keine ausreichende Kapazität in den anderen Knoten vorhanden ist, um die zusätzliche Last aufzunehmen, werden ggf. nicht alle zwischengespeicherten Elemente aus der Rolle auf andere Knoten übertragen. Preserve Data across Azure Updates ist in der Kapazitätsplanungstabelle standardmäßig auf Yes festgelegt. Wenn diese Angabe auf No festgelegt wird, werden die Kapazitätsanforderungen für die Rolle verringert. Wenn "Data Across Azure Updates " auf "Ja" festgelegt ist, behält sich der Leitfaden zusätzliche Kapazität für eine Upgradedomäne im Kapazitätswert vor. Weitere Informationen zu Upgradedomänen finden Sie unter Übersicht über das Aktualisieren eines Azure-Diensts.

Hinweis

Wenn ein Knoten aufgrund eines Fehlers oder aufgrund der Anzahl der Rolleninstanzen aufgrund einer Konfigurationsänderung reduziert wird, werden Cachedaten nicht in andere Knoten verschoben. In-Role Cache verschiebt nur Daten an andere Knoten, wenn das Herunterfahren geplant ist. Hohe Verfügbarkeit kann aktiviert werden, um Sicherungskopien der Cachedaten für den Fall eines Knotenfehlers bereitzustellen. Weitere Informationen finden Sie unter "Hohe Verfügbarkeit" in Azure In-Role Cache.

Upgrade Domain Count bezieht sich auf die Anzahl der Upgradedomänen für die Rolle, die den Cachecluster hostet. Sie können sich von der Kapazitätsplanungstabelle eine Upgradedomänenanzahl für Ihren Cachecluster empfehlen lassen, oder Sie können die Anzahl selbst angeben. Die Standardeinstellung lautet Set by planner. Wenn "Durch Planner festgelegt " ausgewählt ist, enthält die Kapazitätsplanungstabelle eine Empfehlung in der Spalte "Upgradedomänen " des Abschnitts "Ausgabe: Mögliche Konfigurationen ". Wenn eine Upgradedomänenanzahl manuell in der Upgradedomänenanzahl angegeben wird, wird die angegebene Anzahl im Abschnitt "Ausgabe " angezeigt. Weitere Informationen zu Upgradedomänen finden Sie unter Übersicht über das Aktualisieren eines Azure-Diensts.

Sobald die Eingaben konfiguriert wurden, stellt das Tool Vorschläge im Abschnitt "Ausgabe: Mögliche Konfigurationen " bereit. In diesem Beispiel ist die empfohlene Konfiguration eine mittlere VM-Größe mit 3 Rolleninstanzen und einer Upgradedomänenanzahl von 3. Neben der empfohlenen Konfiguration zeigt der Abschnitt "Ausgabe: Mögliche Konfigurationen" die erforderlichen Einstellungen an, wenn eine der anderen VM-Größen ausgewählt wird.

Wenn die durchschnittliche Größe von Objekten im Cache kleiner als 2 KB ist, zeigt das Kapazitätsplanungshandbuch eine Spalte CacheDataSize (MB)* und einen Hinweis unter dem Abschnitt Output an.

Dedicated Cache Capacity Planner Cache Settings

Hinweis

Der Link, der unter dem Abschnitt Output angezeigt wird, bietet eine Verknüpfung mit dem Thema "Erwägungen zur Kapazitätsplanung", das Sie zurzeit lesen.

Wenn diese Meldung angezeigt wird, erstellen Sie eine XML-Datei in Ihrem Rollenprojekt namens CacheSettings.xml, und fügen Sie einen Abschnitt dataCache hinzu, der die Einstellung CacheDataSize (MB) aus dem Abschnitt Output enthält, indem Sie die folgenden Schritte ausführen.

  1. Klicken Sie mit der rechten Maustaste auf das Rollenprojekt, das den Cachecluster in Projektmappen-Explorer hostt, und wählen Sie "Neues Elementhinzufügen" aus. Wählen Sie im Bereich Vorlagen die Option XML-Datei aus, geben Sie CacheSettings.xml in das Feld Name ein, und klicken Sie dann auf Hinzufügen.

  2. Kopieren Sie den unten gezeigten XML-Codeausschnitt, und fügen Sie Ihn in die Datei CacheSettings.xml ein.

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
        <section name="dataCache" type="Microsoft.ApplicationServer.Caching.DataCacheSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere" />
      </configSections>
      <dataCache size="Small">
        <advancedProperties>
          <memoryPressureMonitor cacheUserDataSizePerNode="[CacheDataSize (MB) Setting]" />
        </advancedProperties>
      </dataCache>
    </configuration>
    

    Ersetzen Sie [CacheDataSize (MB) Setting] durch die Einstellung aus der Spalte CacheDataSize (MB), die der Größe Ihres virtuellen Computers entspricht. Im folgenden Beispiel wird 2088 verwendet.

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
        <section name="dataCache" type="Microsoft.ApplicationServer.Caching.DataCacheSection, Microsoft.ApplicationServer.Caching.Core" allowLocation="true" allowDefinition="Everywhere" />
      </configSections>
      <dataCache size="Small">
        <advancedProperties>
          <memoryPressureMonitor cacheUserDataSizePerNode="2088" />
        </advancedProperties>
      </dataCache>
    </configuration>
    

    Wichtig

    Ändern Sie keine anderen Einstellungen in diesem Codeausschnitt, z. B. das dataCachesize Attribut. Das dataCachesize Attribut gibt nicht die Größe der VM-Rolle an, die Sie für den Cachecluster verwenden, und muss auf Smallfestgelegt werden.

    Diese Datei CacheCluster.xml wird zusammen mit ihrer Anwendung bereitgestellt. Sie enthält die erforderliche Konfiguration.

Geben Sie zum Verwenden des Arbeitsblatts Dedicated Role – Planner die Werte in die Abschnitte Input ein, die Ihren Cacheanforderungen entsprechen. Verwenden Sie die empfohlenen Vorschläge als Ausgangspunkt für die Konfiguration Ihres Cacheclusters. Fügen Sie Ihrem Projekt zum Konfigurieren eines dedizierten Rollencaches eine Cacheworkerrolle hinzu, und konfigurieren Sie dann die Eigenschaften des Cacheclusters. Ein Beispiel zum Konfigurieren eines dedizierten Rollencacheclusters finden Sie unter How to: Configure a Cache Cluster for Azure In-Role Cache.

Planer für zusammengefasste Rollen

Die gemeinsame Rolle – Planner-Arbeitsblatt ist das zweite Arbeitsblatt in der Tabelle "Kapazitätsplanungshandbuch " und wird verwendet, um die Einstellungen für einen co-lokalisierten Rollencachecluster zu ermitteln. Ein zusammengestellter Rollencachecluster ist ein Cluster, in dem die Ressourcen der Rolleninstanzen (Arbeitsspeicher, CPU und Bandbreite) vom Cache und der Anwendung gemeinsam verwendet werden.

Co-Located Cache Capacity Planner

Geben Sie die Konfiguration Ihrer Rolle im Abschnitt "Eingabe: Clusterkonfiguration" ein, um die rollebezogene Rolle zu verwenden. Geben Sie unter VM Size die Größe des virtuellen Computers ein, der Ihre Rolle hostet, und geben Sie dann die Anzahl der Rolleninstanzen in Number of VM Instances ein. Geben Sie die gewünschte Cachegröße in User Data to be stored in Cache ein, und geben Sie die gewünschte Einstellung für High Availability Enabled an. Geben Sie "Ja " ein, wenn Sie eine hohe Verfügbarkeit aktivieren möchten, oder nein , falls nicht. In diesem Beispiel wird ein mittelgroßer virtueller Computer mit 3 Rolleninstanzen und einer gewünschten Cachegröße von 1.500 MB ohne Hochverfügbarkeit verwendet.

Nachdem die Eingaben konfiguriert wurden, stellt das Tool eine Empfehlung für die Realisierbarkeit des Hostens des gewünschten Cacheclusters für die vorhandenen Rolleninstanzen zur Verfügung und gibt die Einstellungen an, die für den Schieberegler Cachegröße auf der Registerkarte Caching der Rolleneigenschaften verwendet werden sollen. Dies befindet sich im Abschnitt "Ausgabe: Machbarkeit & Einstellungen". In diesem Beispiel wird die Einstellung Cachegröße (%) auf 30 % festgelegt. Auf diese Weise verbleibt der Rest für das Betriebssystem und andere Prozesse. Wenn die gewünschte Cachegröße für die aktuelle Rollenkonfiguration nicht realisierbar ist, können Sie andere Konfigurationen modellieren, indem Sie die Größe des virtuellen Computers, die Anzahl der Rolleninstanzen und die Cachegröße ändern, bis Sie eine Konfiguration ermittelt haben, die den Anforderungen Ihrer Anwendung genügt.

Caching Role Properties

Um die gemeinsame Rolle – Planner-Arbeitsblatt zu verwenden, geben Sie Werte in den Abschnitt "Eingabe: Clusterkonfiguration " ein, der Ihren Zwischenspeicheranforderungen entspricht. Verwenden Sie Empfehlungen im Ausgabeabschnitt als Ausgangspunkt für die Konfiguration Ihres Cacheclusters.

Hinweis

Die Last, die ein zusammengestellter Cache verarbeiten kann, hängt von der für Caching verfügbaren Bandbreite/CPU ab, sobald die Bandbreite und CPU-Auslastung der primären Anwendung berücksichtigt werden. Tests sollten die Leistung für den Cache und die primäre Anwendung bestätigen.

Nachdem die Cacheclusterkonfiguration ermittelt wurde, kann der Cachecluster auf den Eigenschaftenseiten für die Rolle konfiguriert werden. Ein Beispiel für die Konfiguration eines gemeinsamen Rollencacheclusters finden Sie unter How to: Configure a Cache Cluster for Azure In-Role Cache.