视频:配置使用 Liberty 和 WebSphere eXtreme Scale 进行的会话高速缓存管理

以下抄本用于“配置使用 Liberty 和 WebSphere eXtreme Scale 进行的会话高速缓存管理”视频,此视频描述如何通过将当前应用程序服务器和数据访问进程卸载至内存中高速缓存(将会话高速缓存管理与 Liberty 和 WebSphere eXtreme Scale 配合使用)来改进应用程序的性能。此抄本是视频故事板。音频进行解说和旁白。屏幕上的操作描述视频中显示的内容。

视频 配置使用 Liberty 和 WebSphere eXtreme Scale 进行的会话高速缓存管理

表 1. 简介. 描述使用 Liberty 和 WebSphere eXtreme Scale 来进行会话管理的优点。
场景 音频 屏幕上的操作
1 在应用程序中缓存会话是最有利最易于执行的配置之一,可改进 Web 应用程序的性能和可用性。如果您有应用程序服务器,请将信息存储在会话中,然后您可将当前进程卸载至内存中高速缓存以帮助您的应用程序以超快速度运行。此视频将帮助您完成此任务,方法是演示如何仅使用 Liberty 和 WebSphere eXtreme Scale 快速设置会话管理。

Liberty 是一个快速轻量级的简单 Java Web 应用程序容器,应用程序开发者可使用此容器轻松开发、测试和部署应用程序。

显示视频标题“针对 WebSphere Liberty 的 HTTP 会话故障转移(通过使用 WebSphere eXtreme Scale)”。
2 WebSphere eXtreme Scale 提供在不同机器间复制的分布式内存中数据存储器。 显示 IBM Corporation 声明和免责声明。
3 此视频包含使用 eXtreme Scale 进行会话高速缓存的概述。它还包含用于下载 Liberty 和 WebSphere eXtreme Scale for Developers 的快速步骤。还可了解如何在 Liberty 中配置 WebSphere eXtreme Scale。最后,还包含一个样本 Web 应用程序,该应用程序演示 HTTP 会话如何故障转移至 WebSphere eXtreme Scale 主管的内存中数据网格。 列示视频内容:
显示 Liberty 与 WXS 的演示、设置和样本

WXS 中的会话和数据高速缓存的概述

用于下载 Liberty 和 WXS 的快速步骤

如何在 Liberty 中配置 WXS

用于演示 HTTP 会话如何故障转移至内存中数据网格的样本 Web 应用程序
4 为什么 HTTP 会话持久性很重要?如果没有 HTTP 会话持久性,那么应用程序实例失败或变为不响应时,您将丢失会话数据。例如,在零售方案中,用户将商品添加至购物车时,如果应用程序故障且未启用会话故障转移,那么该用户很可能必须再次登录并重建其购物清单。通常此体验会导致客户有不好的感觉。

开发人员有 3 个选择来保存 HTTP 会话数据:

第一个选择:开发人员可将会话数据存储在应用程序服务器内存空间本地,但其他应用程序服务器实例不会共享 Web 应用程序的公共用户会话。如果该实例失败,那么该会话将丢失,并且用户体验低于预期。

第二个选择:开发人员可将会话保存在实例之间共享的关系数据库中,但关系数据库的体系结构有内在可伸缩性问题,并且读写磁盘比读写内存中数据网格慢。

第三个选择是最佳选择,也是本视频重点描述的:Liberty 使用共享持久性引擎将 HTTP 会话数据存储在弹性可伸缩体系结构(又称为 WebSphere eXtreme Scale)的内存中。将 Liberty 与 WebSphere eXtreme Scale 配合使用允许两个或更多独立 Liberty 实例共享 Web 应用程序的公共用户会话。如果一个实例失败,那么余下实例可继续处理用户请求,就好像未失败一样。

如果维护 HTTP 会话高可用性是优先任务,请使用 WebSphere eXtreme Scale。即使运行时实例失败,客户会话也会保留。客户不知道故障或维护活动,这允许实现一致的客户体验而不会产生中断或数据丢失。

显示有关 HTTP 会话故障转移的信息:
实地体验演示:会话高速缓存

Liberty 的 HTTP 会话故障转移

客户在 Liberty 上具有企业 Web 应用程序,但他们想要维护 HTTP 高可用性,所以他们使用 WebSphere eXtreme Scale 来存储会话数据。
5 将 WebSphere eXtreme Scale 与 Liberty 配合使用对开发者而言有许多好处:
  • 进行分布式数据访问以实现高可用性
  • 进行内存中访问以实现快速检索
  • 通过传统方法(例如,关系数据库或内存间会话复制)内置可伸缩性
  • 进行远程访问以消除单点故障
  • 在 Liberty 环境中进行快速配置的优点
显示有关 Liberty 数据高速缓存的信息:
使用 WXS 进行 Liberty 数据高速缓存

支持对 Web 应用程序和移动应用程序使用分布式高速缓存方案。

将键值对象存储在内存中以实现快速访问。

提供 Web 应用程序的数据需求的线性可伸缩性、可预测性能和故障容许性。
复制数据以便可重新启动高速缓存组件,而不丢失数据或降低性能。

高速缓存是可用于快速构建应用程序的组成元素的示例。
表 2. 有关安装 Liberty 和 WebSphere eXtreme Scale for Developers Liberty 的演示. 显示命令和 server.xml 更改。
场景 音频 屏幕上的操作
6 要体验此功能,可在开发机器上快速安装 Liberty 和 WebSphere eXtreme Scale for Developers Liberty:
  1. 访问 WASdev.net
  2. 下载 Liberty。
  3. 下载 WebSphere eXtreme Scale for Developers Liberty。
  4. 将 JAR 文件安装至“hands on”目录,它是此演示的示例目录。
显示以下步骤:
  1. 访问 WASdev Web 站点。
  2. 选择要尝试此试用版吗?
  3. Liberty Repository 选择 WebSphere eXtreme Scale for Developers Liberty
  4. 在我的 c:\hands-on> 目录中安装这些 JAR 文件。
7 要以共享远程 HTTP 会话数据网格的形式演示 WebSphere eXtreme Scale 的功能,您将见到样本应用程序(通过所显示 URL),此应用程序部署在 Liberty Web 实例的 dropin 目录本地,它显示有关在数据网格中放置和检索会话对象的一些示例。 显示 WebSphere eXtreme Scale HTTP 会话样本和 http://ibm.co/1umQ7iy URL 的图示。
8 您将了解如何配置 Liberty 实例以充当两个 Liberty Web 实例,它们是 WebSphere eXtreme Scale 数据网格的客户机。

您将 WebSphere eXtreme Scale 服务器设置为正在另一 Liberty JVM 上运行的 HTTP 会话存储。

最后,您将配置两个 Liberty Web 实例以将 HTTP 会话数据存储在 WebSphere eXtreme Scale 容器的数据网格中。

显示有关 HTTP 会话故障转移的信息:
实地体验演示:会话高速缓存

Liberty 的 HTTP 会话故障转移

客户在 Liberty 上具有企业 Web 应用程序,但他们想要维护 HTTP 高可用性,所以他们使用 WebSphere eXtreme Scale 来存储会话数据。

一个图形将显示 Liberty 中连接至会话高速缓存的 ServerA 和 ServerB。

表 3. 有关配置 Liberty 以连接至数据网格的演示. 在浏览器中显示服务器配置和测试。
场景 音频 屏幕上的操作
9 现在,您将了解如何配置 Liberty 以连接至数据网格。通过安装带有 Liberty 的 WebSphere eXtreme Scale,您可访问一些功能部件,这些功能部件可用于管理 Liberty 中安装的 HTTP 会话应用程序。

对于远程 WXS_Session_Server Liberty 实例,将设置服务器功能部件。此服务器功能部件包含运行 eXtreme Scale 服务器的功能,这意味着 eXtreme Scale 目录和容器都在运行。想要在 Liberty 中运行目录服务器时或想要将数据网格应用程序部署至 Liberty 时,应添加服务器功能部件。

webGrid 功能部件将托管 WXS_Session_Server Liberty 实例中的会话管理数据网格。Liberty 服务器可托管数据网格,该数据网格会缓存然后复制 HTTP 会话数据以容许应用程序故障。

使用 webApp 功能部件以对 ServerA 和 ServerB Liberty 实例启用会话管理。webApp 功能部件包含用于扩展 Liberty 应用程序的功能。当您要复制 HTTP 会话数据以进行容错时,请添加 webApp 功能部件。请记住将 catalogHostPort 设置为 WXS_Session Server Liberty 实例的主机和端口。

显示有关配置 Liberty server.xml 以运行 WXS 的信息:

此服务器功能部件包含用于运行 eXtreme Scale 服务器(目录和容器)的功能。

<feature>eXtremeScale.server-1.1</feature>
<xsServer isCatalog="true"/>

Liberty 服务器可以托管数据网格,该数据网格用于高速缓存应用程序的数据以复制 HTTP 会话数据进行故障容错。

<feature>eXtremeScale.webGrid-1.1</feature>
<xsWebGrid objectGridName="session" catalogHostPort="remoteHost:2609" securityEnabled="false"/>

webApp 功能部件包含用于扩展 Liberty Web 应用程序的功能。当您要复制 HTTP 会话数据以进行容错时,请添加 webApp 功能部件。

<feature>eXtremeScale.webApp-1.1</feature>
<httpSession idReuse="true"/>
<xsWebGrid objectGridName="session" catalogHostPort="localhost:2609" securityEnabled="false"/>
10 现在会话样本应用程序已在 ServerA 和 ServerB 实例上启动。

立即检查 ServerA 中名为 Loc 的会话属性是否为空。

同时检查 ServerB 的同一属性是否也为空。

显示网址为 localhost:9080/HttpSessionWAR/ 的已打开浏览器和网址为 localhost:9081/HttpSessionWAR/ 的已打开浏览器。两个浏览器都显示未设置属性值的 WebSphere eXtreme Scale HTTP 会话样本。

在网址为 localhost:9080/HttpSessionWAR/ 的已打开浏览器中,显示以下步骤:对获取属性中的属性输入 Loc,然后单击获取属性。此浏览器显示欢迎回来。已检索到会话属性。并且 Loc 属性设置为 null。然后显示以下步骤:单击主页以返回至上一页面。

在网址为 localhost:9081/HttpSessionWAR/ 的已打开浏览器中显示重复的相同步骤。

11 现在,通过 ServerA 的应用程序,指定 NC 作为数据网格的 Loc 会话属性值,并验证是否已设置该值。

立即转至 ServerB 会话应用程序并从数据网格检索会话属性 Loc

在网址为 localhost:9080/HttpSessionWAR/ 的已打开浏览器中,显示以下步骤:在设置属性中,对属性输入 Loc,并对输入 NC,然后单击设置属性。此浏览器显示欢迎回来。已设置会话属性。并且 Loc 属性设置为 NC。然后显示以下步骤:单击主页以返回至上一页面。最后,显示以下步骤:单击获取属性(显示 Loc 属性设置为 NC),然后单击主页以返回至上一页面。

在网址为 localhost:9081/HttpSessionWAR/ 的已打开浏览器中,显示以下步骤:单击获取属性(显示 Loc 属性设置为 NC)。然后显示以下步骤:单击主页以返回至上一页面。

12 现在可使用模拟的意外中断来测试此配置,方法是对 ServerA 停止 Liberty 实例并验证 ServerB 是否仍可从数据网格的会话高速缓存中检索到 Loc 会话属性。 显示有关 HTTP 会话故障转移的信息:
实地体验演示:会话高速缓存

Liberty 的 HTTP 会话故障转移

演示服务器发生故障,但客户体验仍保持,并且会话在整个事务期间一直持续。

一个图形将显示 Liberty 中的 ServerA 和 ServerB。ServerA 被划掉,ServerB 连接至会话高速缓存。

13 ServerA 仍在运行。但您将使用命令行手动停止 ServerA Liberty 实例。

立即访问主管 ServerA 会话的浏览器并刷新以显示不可用 Liberty 实例。

显示网址为 localhost:9080/HttpSessionWAR/ 的已打开浏览器。同时显示以下步骤:在命令行的 C:\hands-in\wlp\bin 目录下输入用于停止 ServerA 的命令:
server stop ServerA

显示以下步骤:刷新网址为 localhost:9080/HttpSessionWAR/ 的已打开浏览器。将显示以下消息:此网页不可用

14 既然 ServerA 已关闭,那么您可验证 ServerB 是否仍可在数据网格中检测到会话数据。为此,将 Loc 会话属性更改为值 MD 在网址为 localhost:9081/HttpSessionWAR/ 的已打开浏览器中,显示以下步骤:单击获取属性(显示 Loc 属性设置为 NC)。然后显示以下步骤:单击主页以返回至上一页面。

显示以下步骤:在设置属性中,对属性输入 Loc,并对输入 MD,然后单击设置属性。此浏览器显示欢迎回来。已设置会话属性。并且 Loc 属性设置为 MD。然后显示以下步骤:单击主页以返回至上一页面。最后,显示以下步骤:单击获取属性(显示 Loc 属性设置为 MD),然后单击主页以返回至上一页面。

15 现在可模拟 ServerA 重新上线并能够检索新的会话值 MD(对于属性 Loc),此值是刚才通过 ServerB 设置的。

现在,浏览器已刷新并指向 ServerA,并从数据网格检索到 Loc 属性的值。

显示网址为 localhost:9081/HttpSessionWAR/ 的已打开浏览器。同时显示以下步骤:在命令行的 C:\hands-in\wlp\bin 目录下输入用于启动 ServerA 的命令:
server start ServerA

显示以下步骤:刷新网址为 localhost:9080/HttpSessionWAR/ 的已打开浏览器。该浏览器显示未设置属性值的 WebSphere eXtreme Scale HTTP 会话样本。

最后,显示以下步骤:单击获取属性(显示 Loc 属性设置为 MD),然后单击主页以返回至上一页面。

表 4. 总结. 总结视频内容并引导观众获取更多信息。
场景 音频 屏幕上的操作
16 祝贺您!您刚创建了第一个 Liberty 集群,此集群带有两个指向共享内存中数据网格(用于存储 HTTP 会话)的实例。 显示有关 HTTP 会话故障转移的信息:
实地体验演示:会话高速缓存

Liberty 的 HTTP 会话故障转移

演示服务器恢复或要添加至拓扑的其他 Liberty 实例将立即见到并共享会话高速缓存。

一个图形将显示 Liberty 中的 ServerA 和 ServerB,这两个服务器都连接至会话高速缓存。

17 在此视频中,您已了解使用高速缓存来实现会话持久性的优点。

不需要更改应用程序代码就可使用 WebSphere eXtreme Scale 数据网格。

甚至在服务器停运时,每个会话的数据也会保存下来。

并且 WebSphere eXtreme Scale 可扩展为太字节规模的数据,并可将数据复制到数以千计的节点以实现故障容许和高可用性。

显示有关 Liberty 会话管理的信息:
使用 WXS 进行 Liberty 会话管理

特殊用途的弹性内存中高速缓存,用于存储 HTTP 会话数据。

将 HTTP 会话对象持久存储至数据网格,从而不必将它们存储在内存中。

不更改应用程序代码(使用 J2EE 标准 HTTP 会话高速缓存)。

服务器停运时,应用程序的每个 HTTP 会话的数据仍保留。

不需要开发者进行管理。

复制会话数据以避免单点故障。

提供低延迟数据访问和事务语义。
18 访问以下资源以在 Liberty 上下载和安装 WebSpphere eXtreme Scale,并访问此演示中使用的样本应用程序。

感谢观看,此处总结有关配置使用 Liberty 和 WebSphere eXtreme Scale 进行的会话高速缓存管理的视频。

显示资源:

(WASdev) https://developer.ibm.com/wasdev

(如何使用 Liberty 安装 WXS)http://youtu.be/Zu4Z1GLjMlE

(演示中使用的样本应用程序)http://ibm.co/1umQ7iy


用于指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: Tuesday, 6 December 2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=video_transcript_xs_session_cache
文件名:video_transcript_xs_session_cache.html