Oracle Coherence

会话管理


Oracle Coherence 集群的一个常见用例是管理集群中的用户会话(会话状态)。此功能由 Coherence*Web 模块提供,它是 Oracle Coherence 的内置特性。Coherence*Web 可为由数百台生产服务器构成的集群中的 HTTP 会话管理提供线性可扩展性。之所以能够实现这种线性可扩展性,是因为其核心基于 Oracle Coherence 动态分区。

Oracle Coherence * Web 提供了显著的性能改进,特别是对于使用大型会话和主动会话到期的部署。此外,Coherence * Web 还包含一个新的乐观会话锁定模型,可显著提高 Web 应用的吞吐量。Coherence * Web 还新增了对 Coherence * Extend 部署的支持,它将应用服务器层与会话管理层隔离开来,从而提高整个系统的可用性。

Oracle Coherence 包括针对 Oracle WebLogic Server、Oracle WebLogic Portal 和 Glassfish Server 的 Oracle Coherence * Web 会话管理模块的原生集成,支持跨多个应用和异构环境的分布式 HTTP 会话管理,同时还允许在会话中存储更多数据。面向 Microsoft .NET Framework 的 Oracle Coherence 会话提供程序支持针对基于 Microsoft .NET Framework 的应用的会话管理。

会话管理强调了共享数据源典型的可扩展性问题:如果某应用无法跨服务器共享数据,则必须要将数据管理完全委托给共享存储(通常是应用的数据库)。如果 HTTP 会话存储在数据库中,每个 HTTP 请求(不存在棘手的负载平衡问题的情况下)都需要对数据库进行读操作,从而导致每秒需要对数据库进行的读操作随着服务器集群的大小线性增加。此外,每个 HTTP 请求都会导致相应 HTTP 会话的更新,因此不论是否存在棘手的负载平衡问题,为了确保该 HTTP 会话的数据在服务器发生故障时不会丢失,每秒需要对数据库进行的写操作也将随着服务器集群的大小线性增加。在这两种情况下,数据库每秒能够完成的实际读写操作与请求这些读写操作的服务器的数量无关,并且数据库迅速成为一个瓶颈,迫使可用性、可靠性(如异步写操作)和性能做出妥协。此外,在性能方面,每次从数据库读取都会产生相关的延迟,并且该延迟会随着数据库负载的不断增加而急剧增加。

另一方面,Coherence*Web 在包含 2 台服务器的集群中和在包含 200 台服务器的集群中的延迟是相同的。这是因为,所有不能在本地处理的 HTTP 会话读操作(例如,因棘手的负载平衡所导致的本地性)都均匀分布在集群的其余服务器上,同时所有更新操作(它们必须进行远程处理以确保 HTTP 会话的进行)也都同样均匀分布在集群的其余服务器上。结果是,无论集群大小如何,都是具有一致延迟的线性可扩展性。

最后,分区功能支持数据容量和吞吐量的线性可扩展性。通过将数据均匀分布在所有服务器上,分区功能实现了数据容量的可扩展性。因此四台服务器可以管理的数据自然是两台服务器的两倍。吞吐量的可扩展性也是将数据均匀分布于所有服务器上的直接结果。这是因为,随着服务器的不断增加,每台服务器都能使用全部的处理能力来管理整个数据集中所占百分比越来越小的数据量。例如,在一个由 10 台服务器组成的集群中,每台服务器需要管理 10% 的数据操作。同时,由于 Oracle Coherence 采用对等架构,这些操作的 10% 分别来自每台服务器。如果服务器数量变为原数量的 10 倍(即 100 台服务器),每台服务器仅管理 1% 的数据操作,同时仅有 1% 的数据操作来自每台服务器。但是由于服务器数量增为 10 倍,集群可以完成的操作数量也变为原数量的 10 倍!在 10 台服务器的示例中,如果每台服务器每秒发出 100 个操作,它们将分别把其中的 10 个操作发送给其余的每台服务器。结果是,每台服务器都会收到 100 个它负责处理的操作 (10x10)。在 100 台服务器的示例中,每台服务器每秒仍然发出 100 个操作,但它们仅把其中的 1 个操作发送给其余的每台服务器。结果是,每台服务器都会收到 100 个它负责处理的操作 (100x1)。这一线性可扩展性的实现得益于现代交换式网络架构,这种架构提供相关背板,它们可以随交换机的端口数量线性扩展,从而为每个端口提供专用的全双工(上行和下行)带宽。由于每台服务器仅发送和接收 100 个操作(在上述 10 个服务器和 100 个服务器的两个示例中),因此各端口的网络带宽利用率大致恒定,而与集群中服务器的数量无关。


下载

活动


网播和视频

Coherence Incubator


客户案例研究

新动态