Java Web 会话 NCache

会议 是一种为不同用户存储数据的方法。 在 Java Servlet 或 Java 服务器页面 (JSP) 内的应用程序服务器上创建的 Java 会话对象,称为 servlet 容器,用于托管 Web 应用程序,包括 Apache Tomcat、WildFly、Web 逻辑网络球体.

例如,Tomcat Web 服务器通过 Tomcat Web 服务器集群上的会话复制来提供会话处理。 会话复制可能会导致数据和内存开销,变得缓慢并且缺乏性能和可扩展性。

因此, NCache 提供了一个更好的选择,用户可以将他们的 Java 会话存储在他们的应用程序中,而不会在负载平衡的 Web 场中出现任何问题。

Java 网络会话

不同的 Servlet 容器关联 NCache

NCache 为其用户提供使用不同类型的 servlet 容器的选项,这些容器可以轻松托管他们的 Web 应用程序,如下所述。

  1. 阿帕奇雄猫: 它是 Java Servlet 和 Java Server 页面的开源实现,还提供 Java 代码可以在其中运行的“纯 Java”HTTP Web 服务器环境。 它通过粘性会话提供会话处理。
  2. 野蝇: 它是一个用 Java 编写的应用服务器,用于在各种环境中部署和管理 Java 应用程序。
  3. 网络逻辑: 它是一个符合 Java 企业版 (EE) 的应用程序,可部署、运行和分发基于 Java 的应用程序。
  4. 网络球体: 它是用于构建和运行 Java 应用程序的最先进的应用程序服务器。

配置 Java 会话模块 NCache

要配置 Java 会话,需要修改位于 %NC_Home%/config 中的“session.xml”文件 NCache 文件夹。 以下是执行此操作的代码 NCache. 有关使用 servlet 容器添加库、定义过滤器和部署应用程序的更多详细信息,请参阅 添加库和定义过滤器 寻求帮助。

<?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>

Java 会话模块的好处 NCache

NCache 为用户提供“无代码更改”选项,让 Java 应用程序在 NCache 分布式缓存。 如果您的应用程序在负载平衡的 Web 服务器场中运行,并且您需要可靠且可扩展的存储来实现会话持久性, NCache 具有以下优点:

  1. 最棒的表演: NCache 提供最快的响应时间,从而提高性能。
  2. 高可用性: NCache 提供强大的分布式缓存集群,没有单点故障 高可用 这意味着您可以在不停止应用程序的情况下添加或删除缓存。
  3. 极高的可靠性: NCache 允许用户根据指定的拓扑在多个服务器之间复制 Java servlet 会话,而不会影响可靠性和性能。 这就是为什么即使缓存服务器因任何原因关闭,用户也不会丢失任何会话数据的原因。
  4. 通过拓扑实现出色的会话复制: NCache 提供各种缓存拓扑,您可以通过这些拓扑根据需要保留会话。 例如,可以使用 分区复制拓扑 以获得更高的可靠性和可扩展性。
  5. 线性可扩展性: NCache, 内存分布 线性可扩展 网格,具有处理高负载的能力,这就是会话应用程序可以实现尽可能多的可伸缩性的原因。

支持 Java Web 会话中的多个区域

要跨地理上分开的多个 Web 场管理 Java servlet 会话, NCache 通过以下方式提供多站点会话持久性:

  1. Java Web 会话 WAN 复制: NCache 允许用户通过 WAN 将所有 Java 会话复制到另一个区域(数据中​​心) 桥接拓扑 的特点 NCache. 这可确保即使某个区域出现故障,您的 Java 会话也不会丢失。
  2. 多站点 Java Web 会话: 如果用户不想在 WAN 上复制会话主要是因为高带宽消耗和可能的性能问题,那么他们可以选择使用 多站点 Java 会话支持, 一个特点 NCache. 在这种方法中,每个区域都可以配置它们单独的缓存,并且每个缓存都有自己的一组客户端(Java servlet)。 会话不会跨站点复制,而是保留在其创建位置。

通过这种方式,我们可以拥有两个或多个活跃的独立区域,并且用户可以将大部分流量保持在自己的区域。 同样,如果用户出于某种原因关闭了某个区域,也不会造成任何问题,因为该区域可以被其他区域访问。

高级功能 NCache Java 网络会话

Java Web 会话 NCache 实现了 Java Web Sessions 提供的所有标准特性。 此外,它还实现了一些高级功能来处理其他重要情况。

  1. 会话到期: NCache 处理会话到期并在指定的会话超时内从缓存中删除会话。 同样,我们可以通过 servlet 容器指定会话超时值, NCache 将在内部使用该时间间隔使缓存中的会话过期。
  2. 处理多个会话请求和数据完整性: 为了避免并行请求可能导致会话发生变异的情况, NCache 提供了一种锁定机制,因此没有两个并行请求可以更改同一个会话。 您可以通过以下方式在“session.xml”文件中指定它:
    <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. 处理会话数据序列化: 在将 Java 对象放入 Java servlet 会话并将它们存储在进程外之后,必须对整个 Java servlet 会话进行序列化。 NCache 与常规 Java 序列化相比,提供更快的序列化,称为 紧凑序列化. 这样,您的 Java 应用程序速度就会大大提高。

接下来做什么?

联系我们

联系电话
©版权所有 Alachisoft 2002 - 版权所有。 NCache 是 Diyatech Corp. 的注册商标。