Von Iqbal Khan, Jeremiah Talkar
Microsoft Azure entwickelt sich schnell zur Cloud-Wahl für .NET-Anwendungen. Neben seinen zahlreichen Cloud-Funktionen bietet Azure eine vollständige Integration mit Microsoft .NET Framework. Es ist auch eine gute Wahl für Java-, PHP-, Ruby- und Python-Apps. Viele der Anwendungen, die zu Azure migriert werden, weisen einen hohen Datenverkehr auf, sodass Sie volle Unterstützung für hohe Skalierbarkeit erwarten können. Der verteilte In-Memory-Cache kann eine wichtige Komponente einer skalierbaren Umgebung sein.
In diesem Artikel werden verteiltes Caching im Allgemeinen und seine Möglichkeiten behandelt.
Die hier beschriebenen Funktionen beziehen sich auf den allgemeinen verteilten In-Memory-Cache und nicht speziell auf Azure Cache oder NCache für Azure. Für in Azure bereitgestellte .NET-Anwendungen bietet der verteilte In-Memory-Cache drei Hauptvorteile:
Azure erleichtert die Skalierung einer Anwendungsinfrastruktur. Sie können beispielsweise problemlos weitere Web-Rollen, Worker-Rollen oder virtuelle Maschinen (VMs) hinzufügen, wenn Sie mit einer höheren Transaktionslast rechnen. Trotz dieser Flexibilität kann die Datenspeicherung ein Engpass sein, der Sie daran hindern könnte, Ihre App zu skalieren.
Hier kann ein verteilter In-Memory-Cache hilfreich sein. Sie können so viele Daten zwischenspeichern, wie Sie möchten. Es kann teure Datenbanklesevorgänge um bis zu 90 Prozent reduzieren. Dadurch wird auch der Transaktionsdruck auf die Datenbank verringert. Es wird eine schnellere Leistung erbringen und eine größere Transaktionslast bewältigen können.
Im Gegensatz zu einer relationalen Datenbank skaliert ein verteilter In-Memory-Cache linear. Im Allgemeinen wird es nicht zu einem Engpass bei der Skalierbarkeit kommen, auch wenn 90 Prozent des Leseverkehrs in den Cache und nicht in die Datenbank gehen. Alle Daten im Cache werden auf mehrere Cache-Server verteilt. Sie können problemlos weitere Cache-Server hinzufügen, wenn Ihre Transaktionslast steigt. Abbildung 1 zeigt, wie Apps an den Cache weitergeleitet werden.
Den ganzen Artikel lesen