So wird es genutzt NCache as AppFabric Alternative

Aufgezeichnetes Webinar
Von Ron Hussain und Zack Khan

AppFabric hat das Ende seiner Lebensdauer erreicht und wenn Sie darüber nachdenken, wie es weitergehen soll, müssen Sie sich dieses Webinar ansehen. Dieses Webinar zeigt Ihnen verschiedene Möglichkeiten zur Migration Ihrer .NET-Anwendungen AppFabric zu NCache.

NCache ist ein extrem schnelles und skalierbares .NET/.NET Core verteiltes Caching-System und bietet einen Wrapper für AppFabric die es Ihnen ermöglicht, zu migrieren NCache mit minimalen bis keinen Codeänderungen in Ihren Anwendungen. Dein Appfabric APIs, die in Ihren Anwendungen verwendet werden, beginnen zu arbeiten NCache einwandfrei. Sie können zusätzlich viele andere APIs und Funktionen nutzen, die von angeboten werden NCache für erweiterte Caching-Funktionen, die in fehlen AppFabric.

Folgendes wird in diesem Webinar behandelt:

  • Überblick über AppFabric und seine Probleme am Lebensende
  • Warum NCache ist die beste Option und Alternative zu AppFabric
  • Verschiedene Wege für die Migration zu NCache
    • Durch No-Code-Change-Wrapper
    • Durch direkt NCache API-Aufrufe
    Erweiterte verteilte Caching-Funktionen, die nur NCache bietet
  • Praktische Beispiele und Demonstrationen der Migration

Das heutige Thema lautet: „Wie Sie verwenden können NCache als AppFabric Alternative?" Das heutige Webinar wird eine Vielzahl von Themen behandeln. Besonders ein Überblick über AppFabric und seine Probleme am Lebensende. Sowie warum NCache ist Ihre beste Alternative zu AppFabric und alle von uns angebotenen erweiterten verteilten Caching-Funktionen, die Sie anstelle von was verwenden können AppFabric verwendet, um ein praktisches Beispiel und eine Demonstration anzubieten, wie Sie können aus migrieren AppFabric zu NCache?

Bitte beachten Sie, dass dies ein Live-Webinar ist. Sie können also jederzeit die Registerkarte „Fragen“ verwenden, um Fragen, Fragen oder Bedenken einzugeben, die Sie möglicherweise haben, und wir können uns an Sie wenden. Und schließlich werden wir am Ende des Webinars auch eine separate Frage-und-Antwort-Sitzung veranstalten. Wenn also jemand Fragen hat, die er bis zum Ende aufheben möchte, können wir uns auch diesbezüglich an Sie wenden. In Ordnung, ohne weiteres, Ron, du hast das Wort.

Das heutige Thema ist also ein sehr spezifisches. Weißt du, es wird decken AppFabric End-of-Life-Probleme und da Microsoft selbst empfohlen hat, dass Sie von dieser Technologie migrieren sollten. Wenn Sie also eine verwenden AppFabric Anwendung, wenn sie noch Teil Ihrer Anwendungsarchitektur ist, würden wir Ihnen einige Optionen vorstellen NCache davon weg zu migrieren, und, wissen Sie, ich werde Ihnen zeigen, wie reibungslos dieser Übergang sein kann. Wie einfach es ist, abzuwandern AppFabric und nutzen können NCache wie es ist und dann in der Lage sein, einige erweiterte Funktionen von zu verwenden NCache welche AppFabric völlig fehlt. So, AppFabric ist ein sehr limitiertes Produkt. Früher hat es sehr gut funktioniert, aber es ist das Ende seiner Lebensdauer, richtig, also wird es nicht gesichert. Es wird nicht mehr aktualisiert. Es ist also höchste Zeit, dass Sie davon weg migrieren.

Also, heute werden wir alle Details behandeln. Welche verschiedenen Möglichkeiten gibt es in Bezug auf die Verwendung NCache, als alternatives Produkt für App Fabric und wie einfach es ist, davon zu migrieren und welche Vorteile Sie erhalten werden, wenn Sie anfangen, es zu verwenden NCache. Wir haben also einige technische Details zu behandeln.

Überblick über AppFabric

Reden wir also darüber AppFabric im Allgemeinen. Ich bin mir ziemlich sicher, dass die meisten von euch es bereits wissen AppFabric und seine Architektur. Wenn es in Ihrer Umgebung verwendet wird, sollten Sie praktische Erfahrung damit haben AppFabric. Es ist ein In-Memory .NET Distributed Caching-System. Es wird hauptsächlich als kostenloser verteilter Cache verwendet, der Teil von Windows Server ist. Es wird hauptsächlich für Webanwendungen, Middle-Tier-Dienste und alle anderen .NET-Anwendungen verwendet, die zwischengespeichert werden müssen, um Fahrten zur Datenbank zu sparen. Es wurde von Microsoft veröffentlicht und unterstützt. 2010 wurde 1.0 veröffentlicht und 1.1 wurde 2015 veröffentlicht und das war die letzte Version von AppFabric. Die Caching-API, wie Sie sie verwenden können AppFabric? Es wird in erster Linie eine .NET-Anwendung sein, die verbraucht AppFabric Data Class und dann den Wrapper exponieren, wissen Sie, die APIs von exponieren AppFabric durch diese Bibliothek. Sie können auch einige Anbieter verwenden, die AppFabric früher hatte. ASP.NET-Sitzungszustandsanbieter und ASP.NET-Ausgabecachinganbieter. Dies waren also keine Codeänderungsoptionen, die Sie verwenden könnten, wenn Sie kein Datencaching verwenden möchten, wenn Sie sich mehr auf webspezifisches Caching konzentrieren, dies waren zwei Funktionen, die ohne Codeänderungen verfügbar sind.

AppFabric Architekturdiagramm

Hier ist die architektonische Aufschlüsselung. Es ist ganz einfach, dass Sie Ihre Cache-Server haben, die in Bezug auf Cache-Hosts bezeichnet werden AppFabric. Es ermöglicht Ihnen, einen Cache-Cluster zu formulieren. Mit einigen Einschränkungen gab es ein Konzept der Mehrheitsregel. Sie müssen mindestens 3 Server haben und wenn einer der Server ausfällt, verstoßen Sie gegen die Mehrheitsregel. Hochverfügbarkeit und Datenzuverlässigkeit können also beeinträchtigt werden, und dann gab es auch ein Konzept von Lead Host.

AppFabric Architekturdiagramm

Aber die Idee hier ist, dass Sie Cache-Server haben, die Ihren Cache hosten. Sie formulieren ein Repository für das Caching und dann kann Ihre Anwendung dieses Cache-Repository verbinden, das von mehreren Servern gesichert wird, und ermöglicht Ihnen die Durchführung von Caching-Operationen.

Früher gab es PowerShell-basierte Cache-Verwaltungstools. Cache-Konfiguration und Cluster-Konfiguration befanden sich normalerweise auf einem Speicherort, einem Dateisystem oder einer Datenbank. Das war also eine weitere innere Abhängigkeit AppFabric. Es gibt also einen Überblick darüber, wie Cache-aktivierte Anwendungsserver oder Cache-Clients eine Verbindung zu diesem Cache-Server herstellen können, wissen Sie, wer den Cache in Ihrer Umgebung tatsächlich hosten wird.

AppFabric ist schon das Ende des Lebens. Die erste Ankündigung kam im April 2016. Dort begann Microsoft mit der Empfehlung, dass Sie von dieser Technologie migrieren sollten, da sie nicht mehr unterstützt wird. Sie kündigten das Ende des Lebenszyklus des Supports für dieses Produkt im April 2016 an und beendeten dann den Mainstream-Support innerhalb eines Jahres. Also 2017 war das Ende ihrer Mainstream-Unterstützung, soweit, AppFabrics offizieller Support von Microsoft betroffen ist und dann der erweiterte Support. Sie verlängern den Support seit einigen Jahren, aber das derzeit letzte Datum wird 2022 sein.

Also, im Grunde ist das die und wir erwarten, dass dies die letzte Erweiterung sein könnte, die Microsoft gegeben hat. Daher empfehlen sie dringend, dass Sie von dieser Technologie migrieren. Es ist nicht Open Source. Es gibt also keine Community, die es unterstützt. Online-Ressourcen, soweit Sie wissen, wann ich dieses Webinar vorbereitet habe AppFabric Die Hilfedokumentation aus dem Microsoft-Portal ist sehr schwierig, wenn Sie anfangen, es zu verwenden.

Daher ist es sehr schwierig, Hilferessourcen zu erhalten. Offizielle Unterstützung gibt es nicht mehr. Eingeschränkter erweiterter Support ist verfügbar. Es werden keine Bugfixes mehr bereitgestellt. Dem Funktionsumfang werden keine weiteren Verbesserungen hinzugefügt. Wenn Sie neuere Plattformen verwenden, wie z. .NET Core, Plattformkompatibilität, Sicherheitsupdates werden nicht dazu gehören. Es ist also im Wesentlichen das Lebensende. Es ist ein veraltetes Regalprodukt, und deshalb empfiehlt Microsoft, dass Sie davon migrieren und Alternativen verwenden, und deshalb veranstalten wir auch dieses Webinar, damit Sie als Teil davon eine einfache Migrationsoption haben NCache, als Ihre Ersatzoption.

Es ist sehr riskant, App Fabric hauptsächlich zu verwenden, da Microsoft, der Hauptanbieter, Empfehlungen gegeben hat, davon weg zu migrieren. Produktionsbereitstellungen sind derzeit gefährdet, da es keinen Support, keine Fehlerbehebungen, keine Verbesserungen, keine Kompatibilitäts- oder Sicherheitsupdates gibt. Du gehst. Die Kosten für einen Ausfall sind sehr hoch, da Sie es möglicherweise in einer geschäftskritischen Anwendung verwenden und wenn diese Anwendung verwendet wird AppFabric und wenn das ein Problem hat oder ausfällt, wissen Sie nicht, wohin Sie gehen sollen. Es kann sich also auf Ihr Unternehmen auswirken, und das kann sich auch auf die allgemeine Benutzererfahrung auswirken.

Wir empfehlen Ihnen daher, die Migration durchzuführen. Vor allem, wenn Sie solche einfachen Migrationsoptionen zur Verfügung haben NCache bietet an. Wir empfehlen Ihnen daher dringend, dieses Projekt vorrangig abzuschließen, und tatsächlich wären Sie in diesem Webinar gegen Ende dieses Webinars vollständig gerüstet, um ein vorhandenes zu verwenden AppFabric Anwendung und ich zeige Ihnen eine Schritt-für-Schritt-Anleitung für die Migration davon, wissen Sie, migriert AppFabric zu NCache. Diese Anwendung kann vollständig, wissen Sie, nicht mehr verwendet werden AppFabric und starten Sie mit NCache und dann zeige ich dir, wie einfach es ist. Es ist ein dreistufiger Prozess, den ich in diesem Webinar behandeln werde und der Ihnen eine sehr gute Vorstellung davon geben sollte, wie Sie mit der Verwendung beginnen können NCache als Alternative. Bisher noch Fragen?

Dies war also nur ein einleitendes Detail. Einige Details darüber, wie AppFabric entstanden? Was sind die Probleme und wie kann man tatsächlich davon migrieren?

NCache als Migrationsoption

Damit NCache ist eine Migrationsoption. Es ist eine sehr natürliche Wahl. NCache ist ein 100% natives .NET-Produkt, das seit über 15 Jahren auf dem Markt ist, mit einer vollständigen Markterfolgsbilanz, mit viel Zugkraft und vielen tatsächlichen benutzerdefinierten Bereitstellungen NCache in ihren Anwendungen und wir haben Kunden überall, auch in verschiedenen Branchen.

  • Der erste Vorteil, den Sie in Bezug auf die Migration erhalten AppFabric zu NCache ist, dass Sie die Windows-Plattform erhalten. So, AppFabric ist ein Windows-basiertes Produkt, NCache ist ebenfalls ein natives Windows-basiertes Produkt. Wir haben also einen .NET-basierten Caching-Server, sodass Sie ihn nativ unter Windows bereitstellen können. Wenn Sie verwenden AppFabric, verwenden Sie möglicherweise Boxen von 2012 oder 2016. Sie können also dieselben Betriebssysteme verwenden und trotzdem installieren NCache auf den gleichen Boxen. Es gibt also keine spezifischen Hardwareanforderungen oder Betriebssystemanforderungen, die Sie erfüllen müssen, um von einer anderen Technologie zu migrieren. Das ist also sehr kompatibel mit dem, was Sie bereits in Ihrer Umgebung haben.
  • Es ist der älteste und stabilste verteilte .NET-Cache. In diesem Bereich sind wir Marktführer. Wir haben einen riesigen Kundenstamm, der verwendet NCache in ihren .NET-Anwendungen. Seit, AppFabric basiert ebenfalls auf der .NET-API. Es ist also eine sehr natürliche Wahl, wo Sie mit der Verwendung beginnen NCache API oder verwenden Sie unseren Wrapper-Ansatz, bei dem es sich um eine Option ohne Codeänderung handelt, und migrieren Sie von AppFabric und starten Sie mit NCache. Es wird vollständig unterstützt. Recht. Das ist also der Hauptpunkt, den wir in den vorherigen Folien angesprochen haben AppFabric ist Lebensende. Es wird von keiner Community unterstützt. Es ist nicht Open Source. Es gibt keine offizielle Unterstützung. Erweiterter Support ist verfügbar, wird aber irgendwann eingestellt. Sie sind also gefährdet.
  • Mit der NCacheerhalten Sie vollständig unterstützte Software sowohl vom Server- als auch vom Client-Standpunkt aus. Wenn Sie Leistungsprobleme, Sicherheitsprobleme, Fehler oder irgendetwas feststellen, wenn neue Funktionen benötigt werden, können Sie sich einfach mit uns in Verbindung setzen und dann werden wir mit Ihnen zusammenarbeiten.
  • Es ist auch viel leistungsfähiger und funktionsreicher.

Deshalb habe ich hier nur einige der häufigsten Faktoren aufgelistet, die Sie berücksichtigen sollten NCache als Alternative. In erster Linie wegen der .NET- und Windows-Unterstützung. Zweitens hat es eine Erfolgsbilanz in der Industrie oder innerhalb der .NET-Anwendungen und wird vollständig unterstützt. Offizielle reguläre und 24x7 Support-Optionen sind bei unseren Teams erhältlich. Und wir werden darüber sprechen, welche verschiedenen Funktionen Sie erweitern können. So können Sie Ihren bestehenden Caching-Anwendungsfall erweitern. Wir sehen Kunden, die zu uns kommen, und sie haben einen Anwendungsfall für AppFabric aber wenn sie adoptieren NCache Sie möchten ihren Anwendungsfall erweitern und diese erweiterten Funktionen nutzen, die nur in verfügbar sind NCache und AppFabric fehlen diese Features komplett. Also, das ist ein weiterer Faktor, den Sie berücksichtigen sollten NCache ist eine Migrationsoption.

NCache Einsatz in Unternehmen

NCache Bereitstellung, in einem typischen großen Unternehmen, so NCache sieht aus wie. Sie haben wieder eine Reihe von Servern, die den Cache-Cluster hosten und anders AppFabric, müssen Sie kein Mehrheitsregel- oder Lead-Host-Konzept haben. Es ist ein Cache-Cluster mit 100 % Peer-to-Peer-Architektur. Es verwendet ein TCP/IP-basiertes Clustering-Protokoll. Sie erstellen einen Cache-Cluster auf einem Team von Servern, und diese tragen zur Verarbeitungskapazität von Anfragen von den Client-Anwendungen bei, die damit verbunden sind. Dies könnte also Ihr ASP.NET oder ASP sein.NET Core Web-Apps. Es ist auch auf einem neueren Stack. .NET bzw .NET Core Web Services oder .NET Core Serveranwendungen.

Also im Allgemeinen jedes .NET, .NET Core oder sogar Java-Anwendungen, eine Verbindung herstellen können NCache und nutzen sie aus NCache zwischenspeichern. Es ist sehr einfach.

Sie können mit 2 beginnen NCache Server zum Formulieren eines Cache-Clusters und 2 ist das Minimum, um Hochverfügbarkeits- und Datenzuverlässigkeitsfunktionen zu erhalten. Sogar ein einzelner Server kann funktionieren, aber ich würde dringend empfehlen, dass Sie mindestens 2 verwenden NCache Server, um von hoher Verfügbarkeit und Datenzuverlässigkeit zu profitieren. Und es ist sehr flexibel. Sie können so viele Caches erstellen, wie Sie benötigen. Die Größe kann wachsen, der Speicher und dann gibt es eine Menge Funktionen, die Sie im Rahmen der Einführung erhalten NCache.

Wir behandeln diesen Abschnitt sehr ausführlich in unserer regelmäßigen NCache Architektur-Webinar aber dies hier ist eher eine Einführungsfolie, also lassen Sie es mich bitte wissen, wenn es irgendwelche spezifischen Fragen in Bezug auf gibt NCache Einsatz.

NCache kann auf separaten dedizierten Servern bereitgestellt werden, auf denen sich Ihre Anwendungen in separaten Boxen befinden NCache ist auf separaten Boxen oder Sie können haben NCache und Anwendungen auf denselben Boxen. Also, Windows Server-Box-Hosting NCache kann auch als Ihre Client-Box, eine Webserver-Box, fungieren. Es ist nur so, dass Ihre Anwendung auf demselben Computer bereitgestellt wird, auf dem NCache läuft auch. Das ist also auch eine Möglichkeit, oder Sie können eine separate Ebene von Caching-Servern haben und Ihre Anwendungen können sich auf separaten Boxen befinden. Wir sind also sehr flexibel.

Es ist erhältlich in Microsoft Azure, sowie AWS und in jeder öffentlichen oder privaten Cloud. Das brauchst du einfach .NET Framework als Voraussetzung für NCache und das ist alles, was es braucht. Wie ich schon sagte, es ist ein sehr flexibles, sehr einfach zu verwendendes Produkt. Im Vergleich zu App Fabric wäre es ein natürlicher Übergang von AppFabric zu NCache wenn Sie vorhaben, es zu adoptieren.

Migrationsoptionen

Als nächstes werde ich also über Migrationsoptionen sprechen und Ihnen praktische Beispiele zeigen, um dies zu erreichen.

App-Daten-Caching

Also, für das Daten-Caching, obwohl wir besprochen haben, dass wir eine .NET-API haben und dann haben wir Sitzungen und Ausgabe-Caching-Funktionen mit AppFabric, also muss dies Ihr gesamter Anwendungsfall sein AppFabric. Wenn Sie derzeit eine Live-Anwendung ausführen, ist das Daten-Caching wahrscheinlich der häufigste Anwendungsfall, den Sie in Ihren Anwendungen bei der Verwendung von App Fabric verwendet haben müssen.

  • Die richtigen AppFabric Verpackung

    Lassen Sie uns also darüber sprechen, wie Sie eine Anwendung mit migrieren AppFabric und Sie beginnen zu verwenden NCache als Ersatz. Es gibt also zwei Möglichkeiten. Wir haben unseren Wrapper entworfen, wir haben ihn implementiert, und zwar ohne Änderungen am Anwendungscode. Sie müssen keinen Code ändern. Sie können mit der Verwendung beginnen NCache als Ersatz für AppFabric. Sie müssen nur unsere verwenden NuGet und aktualisieren Sie den Namensraum. Wir haben also unseren Wrapper implementiert AppFabric API, also in Ihrer Anwendung, wann immer Sie machen AppFabric API-Aufrufe, hinter den Kulissen nimmt die Wrapper-Implementierung diesen Aufruf entgegen und beginnt mit dem Aufrufen NCache und es ist eine sehr einfache Option, mit der Sie Ihre vorhandene Anwendung, die ich Ihnen zeigen möchte, tatsächlich verwalten können. Ich werde dies Seite an Seite und alle Ihre ausführen AppFabric APIs würden anfangen zu arbeiten NCache einwandfrei. Es sind keine Codeänderungen erforderlich. Nur eine Änderung der Bibliothek und des Namensraums würde die Arbeit erledigen.

  • Direkt machen NCache API-Aufrufe

    Die zweite Option ist eine direkte NCache API Forderung. Darin nehmen Sie Codeänderungen vor und führen ein NCache API ruft sich selbst auf. Sie können mit dem Ersetzen beginnen AppFabric APIs oder Sie können mit der Erweiterung der vorhandenen beginnen AppFabric APIs und nutzen Sie auch die erweiterten Funktionen.

Sie können diese beiden Ansätze auch nebeneinander verwenden. Zum Beispiel, was Sie bereits mit haben AppFabric, können Sie unseren Wrapper verwenden, um diese Basis abzudecken, und dann können Sie unseren erweiterten verwenden Funktionen. Funktionen, die in fehlen AppFabric, können Sie diese über unsere nativen APIs verwenden.

NCache Wrapper-Ansatz

Also werde ich diese beiden Aspekte von demonstrieren NCache mit Hilfe der Beispielanwendung. Das ist also unser Wrapper-Ansatz.

Bevor wir tatsächlich anfangen, lassen Sie mich die Umgebung einrichten und Ihnen zeigen, wie NCache konfiguriert wird und wie einfach es einzurichten ist NCache Cluster-Umgebung. Dafür werde ich mich also in unsere Demo-Umgebung einloggen.

NCache Wrapper-Ansatz

  • Herunterladen NCache Wrapper für AppFarbric
  • Speichern NCache Wrapper-Nuget-Paket
    AppFabric.Wrapper.NCache
  • Ersetzen AppFabric Namensraum mit NCache Verpackung
    /*Replace*/
    using Microsoft.ApplicationServer.Caching; 
    /*with */
    using Alachisoft.NCache.Data.Caching;
  • Anwendung ausführen und testen

Umgebung einrichten und Cache-Cluster erstellen

Dies ist unser Web-Management-Tool. Darauf kann von überall in Ihrer Umgebung zugegriffen werden. Es könnten Ihre Client-Boxen, Anwendungsboxen sein. Es könnte Ihr Strom sein AppFabric Serverboxen. Sie müssen nur installieren NCache auf ein oder zwei Kisten und dann einmal NCache Die Installation ist abgeschlossen, Sie können den Webverwaltungsprozess starten und einen Cache-Cluster konfigurieren.

Also habe ich NCache hier auf zwei Boxen installiert, die ich als meine Cache-Cluster-Server verwenden würde. Alles, was Sie tun müssen, ist hier auf den Clustered Cache zu kommen. Sie können übrigens einen Clustered Cache, einen Local Cache, einen Clustered Cache erstellen. Sie können über die IP-Adresse selbst darauf zugreifen.

Sie klicken also auf Neu und können es, sagen wir, democache nennen. Sie können alles benennen. NCache basiert auf der Binär- und JSON-Serialisierung, sodass Sie eines dieser Formate auswählen können. Ich gehe mit Binary und wähle Next.

Wissen Sie, mit NCache wir haben viele Caching-Topologien und ich möchte Sie bitten, unsere zu überprüfen NCache Architektur-Webinar, das all diese Topologien ausführlich behandelt.

Damit Partitionierte Replikattopologie, wenn ich Ihnen einen kurzen Überblick darüber geben muss, es basiert auf Partitionen, die gesichert werden. Das ist also unsere Partition of Replica-Topologie. Jeder Server hat eine Datenpartition, in der Clients verbunden sind. Server 1 und 2 hosten also die aktiven Partitionen. Elementnummer 1, 2 befinden sich auf Server 1 und Elementnummer 3 und 4 auf Server 2, und dann haben wir auch eine Backup-Partition, wobei Server 1 ein Backup auf 2 und Server 2 ein Backup auf Server 1 hat.

Caching-Topologien: Partitionierter Cache und Partition-Replica-Cache

Falls also ein Server ausfällt, wird das Backup aktiviert und Sie verlieren keine Daten. Jeder Server wird also auf anderen Servern im Cache-Cluster gesichert, und Sie können so viele Server haben, wie Sie benötigen. In diesem Setup und ähnlich haben wir andere Topologien, die Sie meiner Meinung nach durch unsere überprüfen sollten Architektur-Webinar. Ich werde mich also für Partitioned of Replica entscheiden. Halten Sie alles einfach.

Der Replikationsmodus zwischen der aktiven Partition und ihrer Sicherung auf dem anderen Server kann Synchronisiert oder Asynchron sein. Ich werde mit Async gehen, weil es schneller ist. Sync ist zuverlässiger, aber Async ist auch ziemlich schnell.

Und hier werde ich Server angeben, die meinen Cache-Cluster hosten werden. Ich habe also zwei Boxen 107 und 108.

Mal sehen, ob dieser Cache, TCP/IP-basierte Parameter, für die Kommunikation zwischen Server-Knoten und Eviction aktiviert werden können. Da Sie hier eine Cache-Größe angegeben haben. Auf diesem Bildschirm geben Sie auch eine Größe des Caches an. Sie können also auch eine Eviction auswählen, die ausgeführt werden soll, wenn Ihr Cache voll ist. In diesem Fall kann Cache also einige ältere Elemente entfernen und Platz für die neueren Elemente schaffen.

Wenn Sie NCache für Sitzungs-Caching, als Migration von AppFabric zu NCache, AppFabric Sitzungen speichern Modul zu NCache Sitzungsspeichermodul empfehlen wir, dass Sie Eviction deaktivieren, da dies Ihre Benutzerdaten und sogar Ihre sensiblen Daten sind, selbst wenn Sie Object Caching APIs verwenden, können Sie Eviction nur aktivieren, wenn Sie es sich leisten können, Daten zu verlieren, wenn Ihr Cache wird voll. Sie können übrigens auch immer eine größere Cache-Größe angeben, um dieses Problem zu entschärfen. Starten Sie diesen Cache nach Abschluss. Starten Sie diesen Cache automatisch beim Start des Dienstes. Daher sollte der Server bei jedem Neustart automatisch wieder dem Cache-Cluster beitreten, sodass es zu keinen Ausfallzeiten oder Datenverlusten kommt. Ein Cluster funktioniert vollständig, wenn alle Mitglieder betriebsbereit sind, also sollte er bei Neustarts automatisch wieder beitreten. Sie sollten es nicht manuell tun und das war's.

So einfach ist es, unseren Cache-Cluster zu konfigurieren. Wie Sie sehen können, haben wir 107 und 108, Democache ist voll funktionsfähig.

Cache-Statistiken überwachen

Und jetzt kann ich Ihnen einige Statistiken zeigen. Dies sind unsere Windows-Leistungsindikatoren. Also, wieder ist es eine sehr natürliche Wahl, wo wir ein integriertes Windows-Überwachungssystem durch Windows-Leistungsmonitore haben.

Und wir haben auch unser eigenes Überwachungstool zur Verfügung, das Windows-Leistungsindikatoren sowie einige Überwachungsparameter innerhalb von verwendet NCache Anwendung. Beispielsweise eine Reihe von Client-Verbindungen, einige Auslastungen, einige Statistiken innerhalb des Cache-Hosts. Wir haben also Cluster, Anfragen/Sekunde, durchschnittliche Mikrosekunde/Cache vollständig verbunden, um Ihnen Latenz, Hinzufügungen, Abrufe, Aktualisierungen, Löschungen/Sek. Größe des Caches, CPU-Diagramm, Speicherdiagramm, Gesamtdaten in der Cache-Anzahl, CPU-Zeit anzuzeigen ausgegeben von NCache, Systemspeicher hier und dann auch die Client-Prozesse, die verbunden sind.

Es ist also sehr aufwendig und hat obendrein ein Client-Dashboard, eine Berichtsansicht von Server und Client und dann können Sie auch Ihre eigenen Dashboards hinzufügen. Nehmen wir an, wenn ich ein neues Dashboard erstelle, sollte es beispielsweise Api Logs heißen, ich kann einfach weitermachen und erstellen und dann kann ich von hier aus Zähler ziehen und ablegen.

Zum Beispiel kann ich Cluster Ops sehen, ich kann Hinzufügungen pro Sekunde sehen. Ich kann also nur Zähler hinzufügen, die ich speziell zur Überwachung benötige NCache Cluster. Im Moment läuft also keine Client-Anwendung, also werde ich schnell eine ausführen und dafür werde ich einfach Test-Stress-Democache sagen. Sobald diese Anwendung läuft, dauert es also beim ersten Mal einige Zeit. Das PowerShell-Fenster auf dieser Box ist leicht verzögert, aber sobald dies ausgeführt würde, würde es eine Dummy-Aktivität in meinem Cache simulieren, und Sie können sehen, wie Anfragen pro Sekunde eingehen.

Wenn ich das hier bringe, beträgt die durchschnittliche Mikrosekunde pro Cache-Vorgang etwas weniger als 100 Mikrosekunden pro Vorgang und wir haben eine hübsche Mischung aus Hinzufügungen pro Sekunde, Abrufen und Aktualisierungen. Die Cache-Größe wächst, einige Megabyte. Es ist im Durchschnitt nur eine Objektgröße von einem Kilobyte. CPU ist weniger als 5%, im Moment 4%. Speicher ist das, was Sie hinzufügen, und Sie können sehen, dass alle Zählersätze hier Aktivität anzeigen.

Wir haben Kundenprozesse, die hier ebenfalls angezeigt werden, und wenn ich Ihnen das Kunden-Dashboard zeige, sehen wir auch all diese Berichte.

Das war also nur, um Ihnen eine Vorstellung davon zu geben, wie einfach die Einrichtung ist. Also, das ist einer der Tests, also, wenn Sie es schon haben AppFabric Server, alles, was Sie tun müssen, ist herunterladen NCache Software von unserer Website, installieren Sie sie auf denselben Servern. Zwei Server sind die Mindestanforderung, die wir für Hochverfügbarkeit und Datensicherheit empfehlen. Sie können auch mit einem beginnen, nur zu Testzwecken, aber wir empfehlen, dass Sie mindestens zwei Server in der Produktion verwenden, und sobald Sie dies getan haben, können Sie zu Ihrer Anwendung wechseln und damit beginnen, denselben Cache-Cluster zu verwenden.

Und nach der Installation müssen Sie natürlich auch einen Cache-Cluster erstellen, was wir gerade getan haben, und dann können Sie mit der Verwendung Ihrer Anwendung beginnen und dann zu Ihrer Anwendung kommen und mit der Verwendung beginnen NCache als Migrationsmöglichkeit und die ich Ihnen anhand einer Beispielanwendung zeigen möchte.

Ausführen einer Probe AppFabric Anwendung

Also, ich habe diese Beispielanwendung. Tatsächlich ist es die gleiche Beispielanwendung, mit native AppFabric Konsolen-UI und die zweite, die ich daraus konvertiert habe NCache AppFabric Konsolen-UI. Wenn ich also diese beiden öffne, sind dies genau die gleichen Anwendungen, aber mit kleinen Änderungen, die vorgenommen wurden, um sie kompatibel zu machen NCache. Also, und ich werde Sie durch diese Veränderungen führen. Ich habe eine separate Kopie davon, die ich demonstrieren werde. Also, ich habe dies als Startup-Projekt festgelegt, richtig, und ich plane, dies auszuführen, und übrigens, bevor ich dies führe, habe ich ein AppFabric Server läuft auch hier. Also haben wir AppFabric Server. Wenn ich Ihnen nur die aktuellen Statistiken zeige, ich habe einige, wissen Sie, lassen Sie mich das einfach neu starten und während dies neu gestartet wird, lassen Sie mich hierher zurückkommen und dies verwendet ein typisches AppFabric, wissen Sie, Daten-Caching-Aufrufe. Lassen Sie mich sehen, ob ich Ihnen von hier aus Program.cs zeige.

Gibt es eine Frage? Ich wollte dir einen werfen. Ja. Einer unserer Teilnehmer erwähnte auf Folie XNUMX, dass der Cache-Cluster unter Windows und Linux läuft, also kann der Server unter Linux gehostet werden, und wenn ja, wie funktioniert die Dashboard-Funktion.

Sehr gute Frage. Das ist ein webbasiertes Verwaltungstool, die in ASP implementiert ist.NET Core, richtig und es hat auch alle Tools, die für die Linux-Umgebung verfügbar sind. Also, wenn Ihr NCache Der Server wird auf Linux gehostet. Zunächst einmal können Sie noch auf das Webmanagement zugreifen, das Teil von Linux wäre. Sie können von jeder Windows-Box oder von jedem Browser in Ihrer Umgebung darauf zugreifen, und für die Linux-Überwachung haben wir noch keine PerfMon-Zähler in Linux, richtig.

Das .NET Core wird noch weiterentwickelt, daher gibt es noch keine PerfMon-Zähler. Also haben wir unsere benutzerdefinierten Zähler für die Linux-Umgebung angegeben. Sie würden eine fast ähnliche Ansicht der Linux-Serverüberwachung erhalten NCache. Der einzige Unterschied wäre also, dass es eine Linux-Box anstelle von Windows wäre und Sie eine haben könnten .NET Core Installation auf diesen Linux-Kisten.

Die Ansicht wäre also dieselbe. Es ist nur, dass wir einen anderen Weg gewählt haben, um eine Einschränkung von zu überwinden .NET Core. PerfMon-Zähler sind nicht vorhanden, daher haben wir unsere benutzerdefinierte Überwachung für diesen speziellen Anwendungsfall implementiert. Ich hoffe, das beantwortet Ihre Frage.

Lassen Sie mich das einfach löschen und Ihnen die aktuelle Statistik zeigen. Das ist also ein 'Democache' mit gleichem Namen, Sie können sogar den gleichnamigen Cache mit verwenden NCache auch. Sie müssen nicht einmal den Namen des Caches ändern. So haben wir das gestaltet. Richtig, also, lass mich dir einfach die Statistik dieses Caches zeigen. Also im Moment ist nichts drin AppFabric Cache-Cluster. Also werde ich diese Anwendung starten.

Mein Ziel hier ist also, dass wir eine Anwendung mit ausführen AppFabric, zeigen Ihnen, dass es funktioniert, und dann migrieren wir davon ab, migrieren davon zu NCache und hör auf zu benutzen AppFabric und starten Sie mit NCache. Also werde ich das ausführen.

Gut. Das ist also mein persönlicher Testfall, eine Beispielanwendung, die ich entworfen habe. Es durchläuft alle APIs, möglicherweise alle APIs von AppFabric. Aus diesem Grund werden derzeit viele APIs ausgeführt. Also werde ich das einfach mit ausführen AppFabric und führen Sie dann dasselbe Beispiel aus, das hätte, und es hätte übrigens auch einen Benachrichtigungstest. Also, während dies erledigt wird, lass mich es einfach hier andocken und dann dieses hier herbringen. Lassen Sie mich dieses Beispiel einfach hier öffnen. Okay, also im Grunde dieselbe Beispielanwendung, mein Fehler. Gut. Also, das ist mit, weißt du, AppFabric und lassen Sie mich Ihnen zeigen, dass dieses Beispiel einige Ergänzungen vorgenommen hat, also, wenn ich Ihnen die Statistiken zeige. Wir haben eine Artikelanzahl von 48, eine Regionsanzahl von 60 und eine Anforderungsanzahl von 154.

Wir haben also eine Reihe von Parametern und wenn ich Ihnen die Schlüssel im Cache zeige, können Sie einige Statistiken im Cache sehen. Also, es hat einige Elemente. Einer der primären Server, weißt du, und er hat im Moment nur einen Server, aber wir haben auch Regionen im Cache hinzugefügt.

Es ist also eine voll funktionsfähige Beispielanwendung, und jetzt werde ich dasselbe Beispiel ausführen und Ihnen dann zeigen, wie Sie die Änderungen vornehmen, übrigens auch, wie wir sie vorgenommen haben. Ich komme also zu diesem Beispiel, das eine Kopie des ersten ist, mit dem wir gelaufen sind AppFabric und Änderungen vorgenommen, um es auszustatten NCache. Starten Sie eine neue Instanz und diese sollte hier ausgeführt werden. Sie können also sehen, dass dasselbe Beispiel mit ausgeführt wird NCache und ich werde Ihnen alle Änderungen gleich zeigen.

Der direkte Vergleich würde Ihnen also wirklich helfen, dass wir das haben, was wir von Beispiel eins erwarten AppFabric und was wir bekommen NCache wird genau gleich sein und würde keine Codeänderungen vornehmen, um dies zu erreichen. Ich werde Sie durch alle Schritte führen, die wir getan haben. Es ist also fast fertig. Lassen Sie mich also ganz nach oben kommen. Läuft übrigens noch. Sie können also sehen, dass die gelbe Markierung im Grunde die Aufgabe ist, die wir erledigen, und wenn sie abgeschlossen ist, wird sie grün angezeigt, und wenn Sie einen Fehler auf der Serverseite sehen, sehen Sie dunkleres Rot , heller rechts und dann dunkleres Rot, wenn es auf der Parsing-Seite ist, auf der Client-Seite. Also habe ich ihnen nur eine farbcodierte Ansicht gegeben. Sie können also sehen, dass alle Ausgaben genau gleich sind, einschließlich der Fehlercodes und eventuell aufgetretener Ausnahmen. Beginnen Sie also hier, fügen Sie einen Schlüsselwert hinzu, fügen Sie einen nicht vorhandenen Schlüssel hinzu, dieselbe Ausgabe hier. Also, füge Item zum Test hinzu, das ist auch die gleiche Ausgabe, hol Item, Item sechs, du weißt schon, Erfolg auch bei diesem, Fehler. So können Sie nebeneinander sehen und dies ist genau passend mit NCache, rechts.

Gegen Ende möchte ich Ihnen also nur einige Ereignisse zeigen. Es werden also auch Regionen verwendet, richtig. Also, regionale Anwendungsfälle genau hier und Sie würden die gleiche Ausgabe sehen NCache auch. Das Löschen einer Region, das Hinzufügen einer Region, das Entfernen des Regionstests funktioniert also genau so, wie es sein soll. Das ist also eine schnelle Demonstration, dass wir dies erreichen konnten.

Lassen Sie mich Ihnen zeigen, welche Schritte erforderlich sind. Jetzt schließe ich das ab und nebenbei haben Sie die gesamte Überwachung, die ich hätte zeigen sollen, aber lassen Sie mich Ihnen nur die Schritte zeigen, die wir durchgeführt haben. Alles, was wir getan haben, ist, dass wir ein NuGet-Paket hinzugefügt haben, und dafür lassen Sie mich das einfach Schritt für Schritt durchgehen. Was Sie also wirklich tun müssen, ist, dass dies die Benutzeroberfläche Ihrer App Fabric-Konsole ist. Es wird also verwendet AppFabric im Moment.

Als Erstes müssen Sie also ein NuGet-Paket hinzufügen. Wenn Sie also NuGet-Pakete verwalten, können Sie einige installierte NuGet-Pakete sehen, oder Sie können nach einigen suchen und sehen AppFabric NCache. Wenn ich darauf klicke, installiere das. Das ist also unser erster Schritt.

Also, wenn ich hierher zurückkomme, müssen Sie innerhalb der Migrationsoption ohne Codeänderungsoption als erstes unser NuGet-Paket vorstellen, das ist AppFabric.Verpackung.NCache und dann ist dieser nächste Schritt, dass Sie ersetzen Microsoft.ApplicationServer.Caching; Namensraum mit dem Alachisoft.NCache.Daten.Caching; Dies ist die Wrapper-Baugruppe und NCache würde ab diesem Zeitpunkt alle Anrufe übernehmen.

NCache Wrapper-Ansatz

  • Herunterladen NCache Wrapper für AppFarbric
  • Speichern NCache Wrapper-Nuget-Paket
    AppFabric.Wrapper.NCache
  • Ersetzen AppFabric Namensraum mit NCache Verpackung
    /*Replace*/
    using Microsoft.ApplicationServer.Caching; 
    /*with */
    using Alachisoft.NCache.Data.Caching;
  • Anwendung ausführen und testen

Lass mich das vor dir machen. Das ist also die Probe, die nativ ist AppFabric Probe. Wir haben das NuGet installiert. Es wird noch gemacht.

Kurze Frage, die ich dir damit zuwerfe. Die Frage war, ob das Abrufen von Elementen anhand von Tags vom Wrapper unterstützt wird.

Ja. Immer, wissen Sie, die AppFabric hat Regionen, richtig. Wenn Sie also Regionen innerhalb verwenden AppFabric, also werden wir Tags und dann Gruppen verwenden, um dies zu unterstützen, aber wenn Sie verwenden möchten NCache Tags, richtig. Wenn Sie also Ihre Caching-Nutzung erweitern möchten, und das ist auch ein Thema innerhalb des Webinars, können Sie in diesem Fall unsere APIs direkt verwenden. Verwenden Sie also den Wrapper, um das zu unterstützen, was Sie bereits durch Regionen haben, Tag wird hinter den Kulissen verwendet, und wenn Sie Tags verwenden möchten, die speziell von angeboten werden NCache, NCache API. Sie können es also direkt verwenden NCache APIs ebenso. Ich hoffe, das beantwortet Ihre Frage.

Also, ich werde das einzeln durchgehen, richtig, und einfach diese Folie hier verwenden, also müssen wir verwenden Alachisoft.NCache.Daten.Caching; Richtig, das ist also die Idee hier. Also werde ich das durchgehen und den Cache hinzufügen. Hat keinen Hinweis auf AppFabric aber dieser hat. Alles, was Sie tun müssen, ist, diesen Namensraum einzuschließen Alachisoft.NCache.Daten.Caching; und das ist es.

Das NuGet-Paket hat also genau hier eine Reihe von Ressourcen hinzugefügt NCache, wissen Sie, Data.Caching, das ist der Wrapper und dann NCache regelmäßige Versammlungen und all das ist, was Sie brauchen. Das NuGet wird hinzugefügt NCache Client-Ressourcen in Ihre Anwendung und dann gehen Sie eine nach der anderen vor und fangen dann an, diese zu ersetzen.

Lassen Sie mich einfach hierher zurückkommen und das so kopieren, wo immer Sie es finden AppFabric Referenz, zum Beispiel hier, ersetzen Sie es durch NCache und ich mache das vor dir, damit du siehst, wie einfach es ist. Also machen wir weiter. Es tut mir leid, mein schlechtes, mit Alachisoft.NCache.Daten.Caching; und wiederholen wir das. Da war ein Tippfehler, also glaube ich, dass ich ihn auch losgeworden bin. Gut. Also werde ich zu anderen Tests übergehen. Das ist okay. Region löschen ist in Ordnung, Region erstellen ist in Ordnung. Alle Regionstests verwenden also keine direkten Referenzen, aber dann haben wir den Tag-Test. Daher werde ich dieses Beispiel auch auf GitHub veröffentlichen. Übrigens ist unser NuGet bereits live, mit den neuesten Service Pack-Informationen, aber ich werde diese in der veröffentlichen. So, ich hoffe, ich habe alle abgeschlossen. Lass mich das einfach nachbauen. Wenn es irgendwelche Fehler gibt, gehe ich einfach hin und gehe diese gezielt an. Also, in diesem denke ich. Gut. Lassen Sie mich also nur bestätigen, dass ich den richtigen Wrapper daraus verwende.

Gut. Wenn Sie dies getan haben, lassen Sie mich wissen, ich glaube, ich habe ein paar übersehen, aber sobald Sie dies getan haben, müssen Sie hierher zurückkehren und Ihre clientseitigen Verbindungseinstellungen hinzufügen. In meinem Fall ist es zum Beispiel diese Box hier, 101, die meine eigene Box ist und die Konfiguration muss den Namen des Caches haben.

Wir hatten zum Beispiel „Democache“. Also, ich werde Ihnen nur einen lokalen Test mit meinem lokalen Cache zeigen, aber Sie können immer auch den Remote-Cache verwenden. Dafür kann ich zum Beispiel diesen Cache hier verwenden. Lassen Sie mich meine Box als Client hinzufügen, rechts und dann fügen Sie dies hinzu, meine Box hat einen Client-Knoten, zum Beispiel 101 ist eine Client-Maschine.

Gut. So, jetzt habe ich alle Einstellungen. Also kann ich entweder die client.nc conf verwenden oder von hier aus einfach auf 107 als Client-Box zeigen.

Recht. Das ist also eine Sache und dann muss die App-Konfiguration auf den Namen des Caches zeigen. Ich habe also nicht vor, hier etwas zu ändern. Lassen Sie mich nun dieses Beispiel mit meinem tatsächlichen Cache ausführen. Es hat gut gebaut. Danach würde ich es einfach laufen lassen. Ich mache es einfach als Startup-Projekt, sobald es fertig ist. Starten Sie ein Projekt und führen Sie es dann aus.

Es ist also im Wesentlichen ein dreistufiger Prozess. Sie können unser NuGet einschließen und Ihr ersetzen AppFabric Bibliothek, ApplicationServer.Caching mit der Alachisoft. NCache.Daten.Caching. Erstellen Sie die Anwendung neu. Stellen Sie sicher, dass keine Fehler vorliegen. Verwenden Sie unser neuestes NuGet-Paket und aktualisieren Sie client.nc conf, um auf den Server zu verweisen, den Sie gerade ausgewählt haben, und in diesem Fall haben wir eine client.nc-conf-Datei, die übrigens vom Server hinzugefügt wird. Jetzt haben Sie einen Cluster konfiguriert. Zeigen Sie einfach auf diesen Server und wenn ich hierher zurückkomme, haben wir jetzt, lassen Sie mich dies überwachen und das Stresstest-Tool schließen. Recht. Wir sollten also Statistiken haben, die von der Anwendung selbst angezeigt werden, richtig.

Im Allgemeinen ist das also der Lebenszyklus, wie Sie unseren Wrapper-Ansatz migrieren und verwenden.

Direkt NCache API-Aufrufe

Lassen Sie mich Ihnen auch die Verwendung des direkten API-Aufrufs zeigen. Nun der zweite Ansatz, bei dem es auch eine Frage gab, was passiert, wenn wir verwenden NCache Tags oder NCache Merkmale? Wir haben also viele erweiterte Funktionen zur Verfügung. So können Sie direkt machen NCache API-Aufrufe zusätzlich zu Ihrer AppFabric Anwendung. Dafür würde ich Ihnen empfehlen, unsere Hilfedokumentation als Leitfaden zu verwenden, und dies ist unsere direkte API. Also, alles, was Sie tun müssen, ist ICache-Cache = CacheManager.GetCache und holen Sie sich das Cache-Handle und beginnen Sie dann mit der Verwendung NCache APIs und dafür brauchen Sie nur unser SDK zu verwenden, und wir haben eine Beispielanwendung, mit der Sie all dies in jede Ihrer Allzweckanwendungen einfügen können.

Hineinschauen NCache APIs

  • Verbinden und Trennen vom Cache
    ICache cache = CacheManager.GetCache("myDistributedCache");
    cache.Dispose();
    
  • Aus dem Cache lesen
    Employee employee = cache.Get<Employee>("Employee:1000"); 
    bool isPresent = cache.Contains("Employee:1000");
  • Zum Cache hinzufügen
    cache.Add("Employee:1000", employee);
    cache.AddAsync("Employee:1000", employee);
    
    cache.Insert("Employee:1000", employee);
    cache.InsertAsync("Employee:1000", employee);
  • Aus dem Cache entfernen
    Employee employee = (Employee) cache.Remove("Employee:1000");
    cache.RemoveAsync("Employee:1000");

Sogar eine Anwendung, die einen Wrapper-Ansatz verwendet, kann diese Nutzung erweitern, und Sie beginnen mit der Nutzung NCache APIs zu einem späteren Zeitpunkt ebenfalls.

Also, wenn ich die Proben öffne und dafür werde ich es Ihnen zeigen NCache Proben. Basic Operations ist eine sehr einfache Beispielanwendung, die die Arbeit erledigt. Dieses grundlegende Betriebsbeispiel ist also fertig. Es hat einen sehr einfachen Ansatz, grundlegende Bedienung, also müssen Sie nur noch hinzufügen Alachisoft.NCache.Klient Bibliothek.

Also, wie gesagt, Sie können dies als Referenz verwenden und wo immer Sie es haben AppFabric, wenn ich zum Beispiel die Bulk Get Tests öffne, können Sie diesen Namensraum hier einfügen, richtig, und darin, darin lassen Sie mich ihn einfach tatsächlich in der Form nehmen, wo wir ihn tatsächlich brauchen. Bitte haben Sie Geduld mit mir. Lassen Sie mich herausfinden, wo ich es hinzufügen soll, da ich nichts am Beispiel ändern möchte. Richtig, ich denke, es ist nur mit AppFabric Wrapper-Test obendrauf. Also, ich denke, ich sollte bei diesem grundlegenden Bedienungsbeispiel bleiben. Recht. Das ist also unser ICache-Klassen-Cache und dann können Sie Create New Customer verwenden, was Ihr Objekt ist, und dann können Sie Add Object To the Cache sagen, was Ihre Implementierung ist, benutzerdefinierte Implementierung, aber so würden Sie es verwenden NCache APIs.

Sie könnten ein Cache-Element erstellen und dann anrufen Cache.Hinzufügen und dies repräsentiert NCache, wissen Sie, APIs Alachisoft Cache-Objekt. Also, es ist die Alachisoft.NCache.Client.ICache.

Es gibt also ein Cache-Handle zurück und ermöglicht Ihnen die Verwendung NCache APIs drauf. Wie ich bereits erwähnt habe, können Sie mit der Migration durch Wrapper beginnen und dann unsere erweiterten APIs darauf verwenden, und dann gibt es eine Menge Dokumentationsressourcen, in denen Sie sehen können, wie AppFabric APIs aussehen und wie NCache APIs. Also, wenn Sie wirklich aufhören wollen, es zu benutzen AppFabric und starten Sie mit NCache APIs können Sie ganz am Anfang beginnen und dann diesen Ansatz verwenden, oder Sie können einen Side-by-Side-Ansatz verwenden, bei dem Sie den Wrapper für eine einfache Migration verwenden und ihn dann mithilfe von erweitern NCache APIs.

Direkt NCache API-Aufrufe

Einige API-Änderungen dazwischen NCache und AppFabric

ASP.NET-Caching mit NCache

Wir haben dies bereits getan. So ASP.NET-Sitzungscaching, ändern Sie einfach den Anbieter so, dass Sie Webkonfigurationsänderungen bereitstellen können, auf die Sie verweisen können NCache Als Session-Speicher und -Ausgang können Sie nur darauf hinweisen NCache als Ausgabe-Caching-Anbieter. Wir haben auch zu diesem Thema detaillierte Hilfedokumente verfügbar. Zum Beispiel, wenn Sie sagen NCache Sitzungs-Caching, es wird auf unseren Sitzungszustandsanbieter verweisen, und Sie können auch nach Ausgabe-Caching suchen. Richtig, also das müssen Sie in der Webkonfiguration ändern.

<configuration>
  ...
  <sessionState cookieless="false"
                regenerateExpiredSessionId="true"
                mode="Custom"
                customProvider="NCacheSessionProvider"
                timeout="20">
    <providers>
      <add name="NCacheSessionProvider"
          type="Alachisoft.NCache.Web.SessionState.NSessionStoreProvider"
           cacheName="demoClusteredCache"
           sessionAppId="demoApp"
           exceptionsEnabled="true"
           writeExceptionsToEventLog="false"
           enableLogs="false"
           enableSessionLocking="true"
           sessionLockingRetry="-1"
           emptySessionWhenLocked="false" />       
    </providers>

  </sessionState>
...
</configuration>

Gleiches gilt für das Output-Caching, das hier richtig ist. Wenn ich also eine Anbieterübersicht bereitstelle, müssen Sie Folgendes in Ihre Anwendung einfügen, um das Caching der App Fabric-Ausgabe zu erhöhen NCache Ausgabe-Caching.

<!-- caching section group -->
<caching>
  <outputCache defaultProvider ="NOutputCacheProvider">
    <providers>
    <add name="NOutputCacheProvider" 
         type= "Alachisoft.NCache.OutputCacheProvider.NOutputCacheProvider, Alachisoft.NCache.OutputCacheProvider, 
         Version=x.x.x.x, Culture=neutral, PublicKeyToken=cff5926ed6a53769" 
         cacheName="demoClusteredCache" 
         exceptionsEnabled="false"enableDetailLogs="false" 
         enableLogs="true" 
         writeExceptionsToEventLog="false"/>"
    </providers>
  </outputCache>
</caching>

Und auf der linken Seite können Sie die Liste mit sehen NCache ist riesig. Multi-Site-Sitzungen sind unterstützt, Sichtzustand Anbieter unterstützt wird, was in fehlt AppFabric. Ausgabe-Caching mit benutzerdefinierten Haken ist ein einzigartiges Merkmal NCache. Ebenso haben wir SignalR Backplane, ASP.NET Core Antwort-Caching, ASP.NET Core SignalR Backplane. Diese Liste ist also sehr umfangreich, da wir unseren Funktionsumfang im Vergleich zu aktiv aktualisieren AppFabric.

WAN-Replikation

Und dann weißt du im Allgemeinen, NCache ist im Vergleich zu 100% Peer-to-Peer-Architektur AppFabric. Viele Caching-Topologien im Vergleich, die Sie überprüfen können. WAN-Replikation ist verfügbar. Unterstützung für mehrere Rechenzentren ist verfügbar, aus NCache, wo Ihnen Aktiv-Passiv-, Aktiv-Aktiv- oder 3+ Aktiv-Aktiv-Rechenzentren zur Verfügung stehen.

Unterstützung mehrerer Rechenzentren: WAN-Replikation

Wir haben eine riesige Gruppe von Kunden, die wir bereits besprochen haben, um sie auch zu unterstützen, wo NCache wird aktiv in Windows- und .NET-Umgebungen eingesetzt. Ich denke, damit ist die heutige Sitzung so ziemlich abgeschlossen. Lassen Sie mich wissen, wenn es irgendwelche Fragen gibt.

Also, ich habe hier oben eine Frage, Ron für dich. Frage ist in unserem formuliert AppFabric Cache Client Wrapper, den wir haben. Wir stellen alle Cluster-Knoten, Ports, Timeout-Einstellungen usw. über APIs vs in der app.config bereit. Können wir nun durch die Verwendung des Wrappers dasselbe über APIs vs. Konfigurationen bereitstellen?

Ja, das können Sie, denn im Allgemeinen haben wir auch Inline-Parameter, richtig. Der Wrapper ist also so konzipiert, dass Sie mit minimalen Code- und Konfigurationsänderungen eine Verbindung zum Cache herstellen können. Also, das ist so ausgelegt, richtig. Aus diesem Grund wollte ich es so aussehen lassen, als wäre es eine sehr einfache Option, abzuwandern. Wir haben Ihnen also nur die Änderungen der Konfigurationsebene gezeigt, aber wenn Sie daran interessiert sind, etwas Inline bereitzustellen, haben wir Init-Parameter. Wir haben also Initialisierungsparameter, mit denen Sie die Liste der Server, Server 1, Server 2, Server 3-Ports bereitstellen können. Also, all die clientseitigen Einstellungen, die Sie als Teil der client.ncconf gesehen haben, lassen Sie mich einfach hier öffnen. Dies sind also Konfigurationseinstellungen, die Sie auch innerhalb des Anwendungscodes angeben können. Das ist also eine Möglichkeit.

Also, einer unserer Teilnehmer fragt nach einigen Leistungsinformationen. Wie zum Beispiel Bandbreite.

NCache ist sehr skalierbar, es hat die Fähigkeit, Ihre Anwendung auszustatten, um eine 100%ige lineare Skalierbarkeit zu erreichen, richtig. Sie können also immer mehr Server hinzufügen und dies würde nur die Kapazität zur Verarbeitung von Anfragen erhöhen. Wenn Sie also nur eine allgemeine Idee haben möchten, empfehle ich Ihnen dringend, sich unseren Benchmark anzusehen. Lassen Sie mich Ihnen das zeigen. Wir haben unsere Benchmarks veröffentlicht, mit unserem und Sie wissen schon, Durchsatzoperationen pro Sekunde mit nur 5 NCache Server konnten wir 2 Millionen Anfragen pro Sekunde erreichen. Richtig, das ist etwas, das Sie überprüfen können, und Sie können es auch von hier aus sehen, wir haben gerade 5 verwendet NCache Server. Da ist ein Video-Demonstration davon auch. Also, wenn Sie dies überprüfen möchten, gibt es eine Whitepaper und dann gibt es eine Video-Live-Demonstration dieses Tests, bei der wir mit 2 Servern begannen und dann einen gewissen Durchsatz und eine Kapazität zur Verarbeitung von Anfragen erreichen konnten und dann die Anzahl der Server durch immer mehr Last erhöhen konnten. Mit nur 5 Knoten-Clustern konnten wir 2 Millionen Operationen pro Sekunde erreichen.

Was also die Serverressourcen betrifft, wenn sich Ihre Frage mehr darauf konzentriert, welche Bandbreite oder Serverressourcen erforderlich sind, waren dies AWS-Server, ziemlich High-End-Server, weil wir wirklich die Kapazität oder die Reichweite demonstrieren wollten, die Sie haben mit erreichen kann NCache. Wir waren also in der Lage, die Server an ihre Grenzen zu bringen und konnten dann 2 Millionen Anfragen pro Sekunde erhalten. Sie können aber auch eine Art Webserver-Konfiguration mit bis zu 8 Kernen und einer 1-Gigabit-Netzwerkschnittstellenkarte mit Speicheranforderungen von bis zu 16 GB oder mehr verwenden. 8 Gigs sind also auch in Ordnung, aber wir empfehlen 16 Gigs. Damit Sie ausreichend Speicher haben, um Ihre Daten zu hosten.

Warum ist NCache eine bessere Lösung als Redis?

Also, wenn ich die fünf wichtigsten Gründe nennen muss, dann zuerst einmal .NET versus nicht-natives .NET. Redis ist nicht sehr kompatibel mit Windows. Es hat eine portierte Version, die von Microsoft Open Tech, einem Drittanbieter, unterstützt wird. Redis Labore bzw Redis Open Source selbst empfiehlt, dass Sie es nicht verwenden sollten Redis auf Windows-Plattform. Also im Vergleich zu AppFabric NCache ist besser geeignet. In erster Linie, weil es sich auf demselben Stack wie of befindet AppFabric & Redis ist nicht. Redis Im Allgemeinen ist es eher ein Linux-basiertes Produkt. Wohingegen NCache ist sowohl ein Windows- als auch ein Linux-basiertes Produkt.

Es gibt viele Probleme mit hoher Verfügbarkeit Redis. Redis Cluster ist im Vergleich zu nicht 100% Peer-to-Peer-Architektur NCache. NCache ist ein Cache-Cluster mit vollständiger Peer-to-Peer-Architektur, in dem Sie jeden Server offline schalten können. Es würde sich nicht auf Ihre Cache-Clients auswirken, die damit verbunden sind, und es würde Ihnen auch keinen Datenverlust bescheren. Dann fehlen viele Features Redis. Wie Client-Cache ist nicht da. Sie haben es kürzlich eingeführt, aber es ist sehr einfach. Wir haben Client-Cache seit 2008, richtig. Es handelt sich also um eine sehr alte Funktion, die als Teil von stark verbessert wurde NCache. Bridge, serverseitiger Code SQL wie Suche, Read-Through, Write-Through-Handler, Cache Loader, all diese Funktionen fehlen Redis und ich möchte, dass Sie schnell ein Vergleichsdokument durchgehen, das auf unserer veröffentlicht ist Vergleichsseite. Du kannst also sehen Azure Redis vs NCache, Redis vs NCache zusammenfassende Unterschiede, Redis vs NCache (Slidedeck) und dann gibt es einige allgemeine Informationen über NCache.

Also, lassen Sie mich Ihnen das ganz schnell zeigen und lassen Sie mich wissen, wenn es irgendwelche Fragen gibt. Ich bin hier registriert, also melde mich einfach an. Sicher. Eine Folgefrage dazu ist eine Frage zur asynchronen Replikation.

Können sie davon ausgehen, dass das Verhalten von asynchronen Replikationen sicher ist, ist es garantiert?

Es ist, es ist ... also, wissen Sie. Wenn es dazwischen fehlschlägt, was ein sehr seltenes Szenario ist, können Sie dieses Update verlieren, aber es ist ziemlich schnell. Wir haben einen eigenen Thread. Lassen Sie mich Ihnen das Diagramm zeigen und dann auf die erste Frage zurückkommen. Gehen wir also zuerst dieser Frage nach. Also, Server 1 aktive Partition, sobald Ihre Anwendung hier etwas hinzufügt, kehrt sie zurück NCache ist dafür verantwortlich, es im Backup zu aktualisieren, und dort haben Sie asynchrone und synchrone Optionen.

Caching-Topologien: Partitionierter und Partition-Replikat-Cache

Async ist also ziemlich schnell. Es ist innerhalb von weniger als einer Millisekunde und ich würde mich sehr freuen, wenn Sie ein Szenario reproduzieren können, in dem ein Anruf auf Server 1 ausgelöst wird und dieser Server während der Replikation ausfällt und Sie das Update nicht erhalten können. Es ist ein sehr seltenes Szenario innerhalb NCache. Sogar unsere QA-Teams arbeiten sehr hart daran, dies zu reproduzieren, und sie sind dazu nicht in der Lage. Mit einer leichten Verzögerung von weniger als einer Millisekunde aktualisiert der dedizierte Thread das Backup, und während dieser Server ausfällt, besteht eine geringe Möglichkeit, dass Sie das Update verlieren, aber wie gesagt, es ist ein sehr seltenes Szenario, das reproduziert werden kann, und wir haben eine Synchronisierungsoption verfügbar, um dieser Situation gerecht zu werden. Wenn Sie sehr besorgt sind, dass Backups ständig aktualisiert werden müssen, können Sie Synchronisierungsupdates verwenden, bei denen ein Client das aktive und das Backup auf einmal aktualisiert. Es ist eine Transaktionsoperation. Wenn es dazwischen fehlschlägt, würde es die gesamte Operation rückgängig machen. Es ist also sehr sicher, wenn Ihre Frage darauf ausgerichtet ist.

Also zurückkommen Redis, Dies Azure Redis vs NCache. Sie können also den Funktionsstufenvergleich und die Liste sehen, in der Azure Redis haben an all diesen Fronten eine teilweise Rolle, begrenzte Unterstützung. Hochverfügbarkeit wird also teilweise unterstützt, Cache-Topologien sind begrenzt, WAN-Replikation ist sehr begrenzt, ASP.NET-Caching Eigenschaften, Objekt-Caching Eigenschaften, Synchronisation Funktionen fehlen komplett Redis und wenn du verwendest NCache Für das Zwischenspeichern von Objekten ist es sehr sinnvoll, diese Synchronisierungsfunktionen zur Verfügung zu haben.

SQL Wie Suchen wird vermisst, Datengruppierung fehlt, serverseitiger Code fehlt komplett und das ist nicht einmal .NET, weil das Redis ist nicht in .NET geschrieben. Also, dann geht die Liste weiter.

Die Frage ist: Also, ich weiß NCache ist in Windows nativ und wird mit Linux verglichen Redis ist besser, aber wie funktioniert NCache unter Linux vergleichen Redis unter Linux?

Gleiche Funktionen, gleiche Unterstützung, unterstützt durch .NET Core ist unter Linux verfügbar. So, NCache ist, es ist nicht nur ein Windows-Produkt im Vergleich zu Redis. Woher Redis ist hauptsächlich Linux-orientiertes Produkt. NCache ist Windows und Linux. Welcher Funktionsumfang Sie hier sehen, wird also in der Linux-Umgebung vollständig unterstützt. All die .NET Core Releases unter Windows sind alle Linux gleichauf. Wir haben unsere benutzerdefinierte Überwachung, um das PerfMon-Zählerproblem von Linux zu berücksichtigen, aber abgesehen davon sind alle Funktionen, die Sie sehen, dieser Vergleich ziemlich gültig, alles gilt auch für die Linux-Umgebung. Ich konzentriere mich mehr auf Windows, weil Redis Im Allgemeinen fehlt, wissen Sie, Windows-Unterstützung vollständig. Aber soweit, NCache Unser Windows-Angebot und unser Linux-Angebot sind genau gleich. Also, alle Funktionen, die wir besprochen haben, haben debattiert NCache ist auch in der Linux-Umgebung ein klarer Gewinner, und zwar bei neueren Bereitstellungen, bei denen mehr Kunden sich dafür entscheiden .NET Core innerhalb ihrer Anwendungen verwenden sie bevorzugt NCache in Linux-Umgebungen. Denn es ist mehr, wissen Sie, kompatibel und einfacher zu verwenden, vom Standpunkt der Lizenzierung aus gesehen ist Linux im Vergleich dazu eher einfacher. So unser NCache Server, die auf Linux-Servern sitzen, durch .NET Core ist heutzutage eine sehr gängige Praxis.

Haben wir Docker-Unterstützung?

Ja, natürlich. Wie können wir nicht haben Docker-Unterstützung mit NCache. Wenn Sie auf unsere Download-Seite gehen, finden Sie einen Abschnitt über Docker. Wir haben .NET Core Docker-Images, die unter Linux verfügbar sind, und dann haben wir .NET Framework Windows und dann haben wir auch Docker-Dateien für beide verfügbar. Für Enterprise, Professional, Open Source können Sie also unsere verwenden, die wir übrigens bewusst beibehalten haben .NET Core Images nur für Linux, da dies das gebräuchlichere ist und Sie tatsächlich unser verwenden können Docker-Images auch in allen Kubernetes-Plattformen. Wie zum Beispiel OpenShift, sowie Azure Kubernetes-Dienst, Elastischer Kubernetes Service auch von AWS und Google Kubernetes Service angeboten. Es ist also sehr verbreitet. Es ist sehr beliebt bei der Anwendungsbereitstellung. Also, es ist etwas, das Sie direkt von unserer Website herunterladen oder zu gehen können Docker-Hub für diese Angelegenheit.

Bitte bestätigen Sie, wenn das Ihre Frage beantwortet. Lassen Sie mich wissen, wenn es weitere Fragen gibt. Irgendwelche anderen? Auch wenn Sie jetzt nicht alle Ihre Fragen stellen können, von denen ich sicher bin, dass wir bereits viele bekommen, aber Sie können jederzeit eine E-Mail senden support@alachisoft.com. Wenn Sie technische Fragen oder Fragen zu Funktionen haben, senden Sie eine E-Mail support@alachisoft.com. Unser Support-Team beantwortet alle Ihre Fragen, Gedanken, Fragen zu Anwendungsfällen usw.

Und wenn Sie daran interessiert sind, zu bekommen NCache begonnen, nun, wir haben zwei Monate frei NCache Enterprise kostenlose Testversion, die Sie herunterladen und dann in Ihrer Umgebung verwenden können, und wenn Sie möchten, können Sie uns entweder unter kontaktieren support@alachisoft.com or sales@alachisoft.com. Wir helfen Ihnen bei der Einrichtung und teilen uns auch mit, an welchen Anwendungsfällen Sie arbeiten. Welche Funktionen interessieren Sie? Wir sorgen dafür, dass Sie technisch absolut zufrieden sind.

Wir hatten auch eine Frage, können wir die Präsentationsfolien bekommen?

Sicher, diese Webinar-Aufzeichnung wird nicht nur veröffentlicht, also erwarten Sie das auf jeden Fall in Ihrer E-Mail, sondern wir können auch die Folien speziell für Sie herausgeben. Wenn Sie möchten oder wenn jemand anderes die Folien haben möchte, fordern Sie sie jetzt an. Ich werde dafür sorgen, dass jeder die Folien bekommt.

Wenn es keine weiteren Fragen gibt, denken Sie einfach daran, dass Sie uns jederzeit erreichen können. Herunterladen NCache Enterprise, wenn Sie es noch nicht getan haben und definitiv damit spielen. Wenn Sie Hilfe bei der Einrichtung in Ihrer Umgebung benötigen, wenden Sie sich auf jeden Fall an uns.

Was macht man als nächstes?

 
© Copyright Alachisoft 2002 - Alle Rechte vorbehalten NCache ist eine eingetragene Marke der Diyatech Corp.