Java-Websitzungen mit NCache

Sessions sind eine Möglichkeit, Daten für verschiedene Benutzer zu speichern. Auf dem Anwendungsserver erstellte Java-Sitzungsobjekte, sogenannte Servlet-Container, die die Webanwendung hosten, sind in einem Java-Servlet oder einer Java-Server-Seite (JSP) enthalten Apache Tomcat, WildFly, Weblogik und WebSphere.

Beispielsweise bietet der Tomcat-Webserver Sitzungsverarbeitung durch Sitzungsreplikation über Tomcat-Webserver-Cluster. Die Sitzungsreplikation kann zu einem Daten- und Speicher-Overhead führen, langsam werden und an Leistung und Skalierbarkeit leiden.

Daher sind NCache bietet eine bessere Option, bei der Benutzer ihre Java-Sitzungen problemlos in ihrer Anwendung in einer Webfarm mit Lastenausgleich speichern können.

Java Websitzungen

Verschiedene Servlet-Container im Zusammenhang mit NCache

NCache bietet seinen Benutzern die Möglichkeit, verschiedene Arten von Servlet-Containern zu verwenden, die ihre Webanwendung wie unten beschrieben problemlos hosten können.

  1. Apache tomcat: Es ist eine Open-Source-Implementierung von Java-Servlet- und Java-Server-Seiten und bietet auch eine „reine Java“-HTTP-Webserverumgebung, in der Java-Code ausgeführt werden kann. Es bietet Session-Handling durch Sticky-Sessions.
  2. Wildfliege: Es ist ein in Java geschriebener Anwendungsserver, der Java-Anwendungen in einer Vielzahl von Umgebungen bereitstellt und verwaltet.
  3. Weblogik: Es ist eine mit Java Enterprise Edition (EE) kompatible Anwendung, die Java-basierte Anwendungen bereitstellt, ausführt und verteilt.
  4. Websphäre: Es ist der fortschrittlichste Anwendungsserver zum Erstellen und Ausführen von Java-Anwendungen.

Konfigurieren des Java-Sitzungsmoduls für NCache

Zum Konfigurieren von Java-Sitzungen muss die Datei „session.xml“ geändert werden, die sich unter %NC_Home%/config in der befindet NCache Mappe. Im Folgenden ist der Code, der es tut NCache. Weitere Einzelheiten zum Hinzufügen von Bibliotheken, zum Definieren von Filtern und zum Bereitstellen der Anwendung mithilfe von Servlet-Containern finden Sie unter Bibliotheken hinzufügen und Filter definieren um Hilfe.

<?xml version="1.0" encoding="UTF-8"?>  
   <!--for single regional session provider-->
<servlet-session-config>
    <cache id="myPartitionedCache"/>
    <log log-props="log4j.properties"/>
    <locking enable-session-locking="true" retries-count="2" retry-interval="500ms" lock-timeout="36000ms" empty-session-when-locked="false"/>
</servlet-session-config>

Vorteile des Java-Sitzungsmoduls für NCache

NCache bietet dem Benutzer eine „keine Codeänderung“-Option für Java-Anwendungen, um Sitzungen beizubehalten NCache verteiltes Caching. Wenn Ihre Anwendung in einer Webserverfarm mit Lastenausgleich ausgeführt wird und Sie einen zuverlässigen und skalierbaren Speicher für Ihre Sitzungspersistenz benötigen, NCache bringt folgende Vorteile:

  1. Beste Leistung: NCache bietet die schnellste Reaktionszeit und damit eine verbesserte Leistung.
  2. Hohe Verfügbarkeit: NCache bietet stark verteilte Cache-Cluster ohne Single Point of Failure hoch verfügbar Das bedeutet, dass Sie Cache hinzufügen oder entfernen können, ohne Ihre Anwendung zu stoppen.
  3. Extreme Zuverlässigkeit: NCache ermöglicht es dem Benutzer, Java-Servlet-Sitzungen über mehrere Server gemäß ihrer angegebenen Topologie zu replizieren, ohne die Zuverlässigkeit und Leistung zu beeinträchtigen. Aus diesem Grund verliert der Benutzer keine Sitzungsdaten, selbst wenn der Cache-Server aus irgendeinem Grund ausfällt.
  4. Brillante Sitzungsreplikation durch Topologien: NCache bietet verschiedene Caching-Topologien, durch die Sie Ihre Sitzungen entsprechend Ihren Anforderungen beibehalten können. Man kann zum Beispiel verwenden Partitioniert-replizierte Topologie für mehr Zuverlässigkeit und Skalierbarkeit.
  5. Lineare Skalierbarkeit: NCache, ein In-Memory verteilt linear skalierbar Grid, ist in der Lage, hohe Lasten zu bewältigen, weshalb Sitzungsanwendungen so viel Skalierbarkeit wie möglich erreichen können.

Unterstützung für mehrere Regionen in Java-Websitzungen

Um Java-Servlet-Sitzungen über mehrere Webfarmen hinweg zu verwalten, die sich geografisch getrennt befinden, NCache bietet Sitzungspersistenz an mehreren Standorten auf folgende Weise:

  1. Java Web Sessions WAN-Replikation: NCache ermöglicht es einem Benutzer, alle Java-Sitzungen über das WAN in eine andere Region (Rechenzentrum) zu replizieren, was über die erfolgt Brückentopologie Merkmal von NCache. Dadurch wird sichergestellt, dass Ihre Java-Sitzungen niemals verloren gehen, selbst wenn eine Region ausfällt.
  2. Siteübergreifende Java-Websitzungen: Wenn ein Benutzer die Sitzungen hauptsächlich aufgrund des hohen Bandbreitenverbrauchs und möglicher Leistungsprobleme nicht über das WAN replizieren möchte, kann er sich für das Konzept von entscheiden Unterstützung für Multi-Site-Java-Sitzungen, ein Merkmal von NCache. Bei diesem Ansatz kann jede Region ihre eigenen Caches konfigurieren und jeder Cache hat seinen eigenen Satz von Clients (Java-Servlet). Die Sitzung wird nicht standortübergreifend repliziert, sondern an ihrem Erstellungsort aufbewahrt.

Dadurch können wir zwei oder mehr aktive separate Regionen haben und ein Benutzer kann den größten Teil des Datenverkehrs in seiner eigenen Region behalten. Wenn der Benutzer eine Region aus irgendeinem Grund herunterfährt, verursacht dies kein Problem, da andere Regionen auf diese Region zugreifen können.

Erweiterte Funktionen im NCache Java Websitzungen

Java-Websitzungen für NCache implementiert alle Standardfunktionen von Java Web Sessions. Darüber hinaus implementiert es einige erweiterte Funktionen, um andere wichtige Situationen zu bewältigen.

  1. Sitzungsablauf: NCache behandelt den Sitzungsablauf und entfernt Sitzungen für ein bestimmtes Sitzungs-Timeout aus dem Cache. In ähnlicher Weise können wir den Sitzungszeitüberschreitungswert über Servlet-Container und angeben NCache verwendet dieses Intervall intern, um Sitzungen aus dem Cache ablaufen zu lassen.
  2. Umgang mit mehreren Sitzungsanfragen und Datenintegrität: Um die Situation zu vermeiden, in der parallele Anforderungen dazu führen können, dass Sitzungen mutieren, NCache bietet einen Sperrmechanismus, damit keine zwei parallelen Anfragen dieselbe Sitzung ändern können. Sie können es auf folgende Weise in der Datei „session.xml“ angeben:
    <servlet-session-config>
        <locking enable-session-locking="true" retries-count="2" retry-interval="500ms" lock-timeout="36000ms" empty-session-when-locked="false"/>
    </servlet-session-config>
  3. Umgang mit der Serialisierung von Sitzungsdaten: Nachdem Sie Ihre Java-Objekte in Java-Servlet-Sitzungen eingefügt und außerhalb des Prozesses gespeichert haben, muss die gesamte Java-Servlet-Sitzung serialisiert werden. NCache bietet eine schnellere Serialisierung im Vergleich zur regulären Java-Serialisierung, genannt Kompakte Serialisierung. Damit erhöht sich die Geschwindigkeit Ihrer Java-Anwendung erheblich.

Was macht man als nächstes?

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