Einführung in die NCache

NCache ist ein verteilter Open-Source-In-Memory-Cache für .NET- und Java-basierte Anwendungen. NCache hilft Ihnen, extrem schnelle Transaktionsgeschwindigkeiten für Ihre unternehmenskritischen Apps mit einfacher linearer Skalierbarkeit zu erreichen.

Verteilter In-Memory-Datenspeicher

NCache ist aufgrund seiner In-Memory-Natur und seiner verteilten Architektur ein extrem schneller und skalierbarer Open-Source-Datenspeicher. Es ist das einzige 100% .NET / .NET Core Lösung auf dem Markt, da andere Lösungen auf C++ und Linux basieren, wodurch sie sich sehr gut in den .NET-Stack Ihrer Anwendungen einfügt. Es ist die beliebteste Caching-Lösung in der Community der .NET-Entwickler, was es in den letzten 15 Jahren zu einem .NET-Marktführer gemacht hat.

Welche .NET-Anwendungen benötigen NCache?

Sie werden höchstwahrscheinlich von der Verwendung profitieren NCache wenn Ihre Bewerbung zu einer der folgenden Kategorien gehört:

  • Webanwendungen (ASP.NET/ASP.NET Core)
  • Webdienstanwendungen (.NET)
  • Microservices-Anwendungen (.NET)
  • Andere Serveranwendungen (.NET)

Warum brauchst du NCache?

Umgang mit extremen Transaktionslasten: Ihre Anwendung muss in Spitzenzeiten extreme Mengen an Transaktionen verarbeiten. NCache können Sie die gesamte Transaktionslast ohne Ausfallzeiten bewältigen.

Kundenorientierte Websites: Einzelhandelsunternehmen, die die meisten Transaktionen hauptsächlich über eine kundenorientierte Website oder einen Online-Shop oder ein reines E-Commerce-Geschäft abwickeln, das Ihre Produkte online verkauft, können sich darauf verlassen NCache für Hochverfügbarkeit. Ebenfalls, NCache kann führenden Fluggesellschaften zugute kommen, die Tickets und Reservierungen über die Website oder eine Online-Gaming- oder Wett-Website in Europa verkaufen, wo sich Kunden während großer Sportereignisse anmelden, um in Echtzeit Wetten zu platzieren.

Hintergrundverarbeitungsunternehmen: Ein Unternehmen, das viele Transaktionen im Hintergrund verarbeiten muss, z. B. Banken, die Kundenüberweisungen verarbeiten, oder ein Kreditkartenunternehmen, das Ihre Kundentransaktionen überwacht, um Betrug aufzudecken. Ebenso kann ein Logistikunternehmen viele Fahrzeuge in Echtzeit überwachen oder ein Versorgungsunternehmen viele Geräte in Echtzeit überwachen und ihr Verhalten analysieren NCache um ein ausfallsicheres Daten-Caching zu gewährleisten.

Wenn Sie eines dieser Unternehmen oder eine Vielzahl anderer ähnlicher Unternehmen sind, können Sie es sich nicht leisten, dass Ihre Anwendung während Spitzenzeiten verlangsamt wird, da die Kosten für Ihr Unternehmen sehr hoch sind. Leider verlangsamen sich viele Anwendungen, weil die Datenbank solch hohe Transaktionslasten nicht bewältigen kann und zu einem Flaschenhals wird. Der Grund dafür ist, dass Sie im Gegensatz zur Anwendungsebene, bei der Sie mit zunehmender Transaktionslast weitere Server hinzufügen können, Ihrer Datenbankebene keine weiteren Server hinzufügen können.

NCache - Die Lösung

Die Lösung für dieses Problem ist die Verwendung NCache Anwendungsdaten zwischenzuspeichern und auch alle transienten oder temporären Daten darin zu speichern. Im Gegensatz zu Ihrer Datenbank NCache ist verteilt und ermöglicht es Ihnen, eine Caching-Ebene von zwei oder mehr Servern aufzubauen und den Arbeitsspeicher und die CPU aller Cache-Server in einer logischen Kapazität zu bündeln. NCache Anschließend können Sie dieser Caching-Ebene weitere Server hinzufügen, wenn Ihre Transaktionslast zunimmt.

NCache

Dadurch NCache kann linear skalieren und wird nie zu einem Leistungsengpass. Darüber hinaus seit NCache ist vollständig im Speicher, es ist superschnell. Sie können verwenden NCache auf drei verschiedene Arten.

  1. Sie können Anwendungsdaten zwischenspeichern NCache um Ihre Datenbankfahrten um 80 bis 90 % zu reduzieren und sicherzustellen, dass Ihre Datenbank kein Leistungsengpass mehr ist.
  2. Sie können Ihr ASP.NET/ASP speichern.NET Core Sitzungen ein NCache weil es extrem schnell und skalierbar ist und weil es Sitzungen über mehrere Server repliziert, um eine hohe Verfügbarkeit zu gewährleisten
  3. Sie können verwenden NCache als einfache, aber leistungsstarke Pub/Sub-Messaging- und Ereignisplattform und koordinieren die Arbeit zwischen mehreren Serveranwendungen nahtlos.

Feature-Highlights

Werfen wir einen kurzen Blick auf die Funktionen, die NCache Angebote zur Sicherstellung linearer Skalierbarkeit durch Beseitigung von Leistungsengpässen.

Feature: Cache frisch halten

NCache hat eine Reihe von Möglichkeiten, um Ihre Cache-Daten so aktuell wie möglich zu halten, ohne dass Ihre Anwendung all dies nachverfolgen muss. Sie können absolute und gleitende Verfallsdaten verwenden, um Daten automatisch aus dem Cache zu entfernen.

Feature: SQL-Suche

Sie können auch haben NCache automatisch mit der SQL-Datenbank synchronisieren, wenn Daten in der Datenbank durch andere Anwendungen geändert werden. Sie können auch Eins-zu-Viele- und Eins-zu-Eins-Beziehungen von Daten im Cache angeben, damit die Datenintegrität nicht verletzt wird, wenn der Cache aktualisiert wird.

Wenn Sie dann viele Daten in den Cache legen NCache können Sie basierend auf Objektattributen, Gruppen, Tags und benannten Tags danach suchen. Dies macht es wirklich einfach, Ihre Daten zu finden. Sie können SQL- oder LINQ-Abfragen zum Durchsuchen des Caches und verwenden NCache erstellt auch Indizes, um Ihre Suche zu beschleunigen.

Feature: Serverseitiger Code

NCache ist die einzige Lösung im .NET-Bereich, die Ihnen serverseitige Codefähigkeit bietet. Sie können Read-Thru implementieren, damit Ihr Cache die Daten aus Ihrer Datenbank holt, und wenn Sie dies mit der Auto-Load-Funktion kombinieren, NCache lädt Daten bei Erkundungen oder bei der Datenbanksynchronisierung automatisch neu. Sie können Write-Thru auch implementieren, damit der Cache Ihre Datenbank für Sie aktualisiert.

Write-Behind aktualisiert die Datenbank asynchron, sodass Ihre Anwendung nicht darauf warten muss. Schließlich lädt ein Cache Loader den Cache automatisch vor, wenn Sie ihn starten.

Feature: Client-Cache (InProc-Geschwindigkeit)

NCache ist die einzige Lösung in .NET, die eine Client-Cache-Funktion bereitstellt, die auch „Near Cache“ genannt wird. Es gibt Ihnen eine InProc-Leistung, als ob die Cache-Daten in Ihrem Anwendungsprozess aufbewahrt würden. Der Client-Cache ist ein lokaler Cache für Ihre Anwendung, bleibt jedoch für alle Aktualisierungen durch andere Anwendungen oder andere Benutzer mit der Caching-Schicht synchronisiert. Der Client-Cache verleiht Ihrer Anwendung einen erheblichen Leistungsschub.

InProc-Geschwindigkeit

Feature: WAN-Replikation des Caches

Wenn Ihre Anwendung in mehreren Rechenzentren, mehreren Azure-Regionen oder mehreren AWS-Verfügbarkeitszonen bereitgestellt wird, dann NCache können Sie den Cache über das WAN replizieren, ohne Ihre Anwendung an beiden Standorten zu verlangsamen. Sie können bereitstellen NCache in einer Aktiv-Passiv- oder einer Aktiv-Aktiv-Rechenzentrumskonfiguration.

Aktiv passiv
Aktiv passiv
Aktiv-Aktiv
Aktiv-Aktiv

Bereitstellungsoptionen

.NET Framework Unterstützung

Wie du bereits weißt, NCache ist 100 % .NET / .NET Core Lösung Sehen wir uns an, welche Art von .NET-Unterstützung sie hat, und sehen wir uns auch verschiedene Möglichkeiten der Bereitstellung an NCache. NCache bietet einen Cache-Client mit voller Unterstützung von beiden .NET Framework mit Dingen wie:

  • Entitätsframework 6.x
  • NHibernate Cache
  • ASP.NET-Sitzung
  • Sichtzustand
  • Ausgabe-Cache
  • ASP.NET SignalR

.NET Core Unterstützung

Aussichten für .NET Core, NCache unterstützt:

  • EF Core-Cache
  • ASP.NET Core Session
  • Antwort-Cache
  • IDistributedCache
  • ASP.NET Core SignalR

NCache Server (100 % .NET)

Genau wie der Cache-Client, NCache Server ist auch 100% .NET / .NET Core. Keine andere Lösung hat dies, da andere C++ oder Linux sind. NCache Server unterstützt sowohl .NET als auch .NET Core und durch die .NET core Edition, die Sie bereitstellen können NCache in den unten angegebenen Kapazitäten:

  • Windows-Server/Nano-Server/Linux
  • Lokale Installation unter Windows und Linux
  • Als VM in der Azure- und AWS-Cloud über deren Marktplätze
  • Als verwalteter Cache Cloud Service Clister in Azure und AWS durch NCache's eigenes Cloud-Portal
  • Laden Sie ein Docker-Image von herunter NCache vom Docker-Hub
  • Erstellen Sie Ihr eigenes Kunden-Docker-Image von NCache durch Docker-Dateien

Was macht man als nächstes?

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