案例分析 - NCache 帮助 Apex Learning 减轻会话丢失

Telenor 案例研究

NCache 允许我们完全负载平衡。 每台服务器始终拥有相同数量的会话,这极大地提高了可扩展性。

罗希特·阿加瓦尔(Rohit Agarwal)
首席软件工程师
顶点学习
ApexLearning 徽标
 

国家或地区:
美国和其他国家

行业:
中学教育数字课程

公司简介:
Apex Learning 是美国学区中学教育数字课程的领先提供商。 该公司基于标准的综合性在线课程帮助学校成功地让所有学生参与严格的课程作业,并为高中毕业及以后做好准备。

借助 Apex Learning 数字课程,教师能够更有效地区分教学,并花更多时间与学生进行一对一的合作,以满足个人需求。 多媒体教学内容激发和吸引学生,提供概念的多种表示,并解决不同的学习方式。 以自己的节奏移动的能力使学生可以花尽可能多或尽可能少的时间来掌握材料。 Apex Learning 数字课程支持所有学生取得成功,从没有准备好应对年级学术挑战的学生到能够完成高级课程的学生。

 

Alachisoft 产品名称:
NCache

满足客户需求:

  • 值得信赖
  • 可扩展性
  • 高可用性
  • 易于维护

关于我们 Alachisoft:
Alachisoft,一家位于加利福尼亚的公司提供 NCache 和存储边缘。 NCache 是一种内存分布式数据缓存,可让您缓存应用程序数据和 ASP.NET 会话状态,以提高您的应用程序性能和可伸缩性。 StorageEdge 通过外部化 BLOB 和缓存 BLOB 和列表数据来加速 SharePoint。

您可以下载 30 天的免费试用版 NCache 止 点击此处.

Alachisoft
公司总部
12005 Ford Road, Suite 520
达拉斯,德克萨斯州75234

US: +1 (214) 764-6933
UK: +44 207 993-8327

sales@alachisoft.com
support@alachisoft.com

Apex Learning 通过高度可用的 Web App 扩展到 25000 个并发用户; 谢谢 NCache.

下载PDF
罗希特·阿加瓦尔(Rohit Agarwal)

“在上课时间的任何给定时间,我们都有 25,000 个活跃用户。那个单一的 StateServer 并没有给我们所需的可扩展性。我们需要一种在未来进行扩展的方法,以便我们可以添加更多节点。因此,可靠性是第一位的问题和可扩展性排名第二。”

罗希特·阿加瓦尔(Rohit Agarwal)
首席软件工程师
顶点学习

挑战

Apex Learning 以通过在线学习为全国地区和学校提供高质量、完整的高中课程而感到自豪。 该公司将大量时间和精力用于开发和改进其数字课程。 确保教师和学生在需要时可以使用这些有价值的在线教育材料同样重要。

技术副总裁汤姆·斯坦顿 (Tom Stanton) 说:“我们的学生几乎 24/7 都在线。我认为没有人不使用这些解决方案的时间点,即使是凌晨 3 点。”

确保高度可用的基于 Web 的解决方案的可靠性、可扩展性和维护具有一些独特的挑战。 Apex Learning 大约两年前在使用 Microsoft 的 ASP.NET 的 StateServer 时遇到了一个。 在原始架构中,应用服务器使用 StateServer 来维护用户会话。 首席软件工程师 Rohit Agarwal 说:“我们在负载均衡器中使用粘性会话,因为每台服务器都在运行自己的本地状态会话服务器。”

使用粘性会话,无论该服务器上有多少负载,用户都会被发送回创建会话的原始 Web 服务器。 根据 Agarwal 的说法,“StateServer 的问题在于它不允许跨服务器共享会话数据,而且我们只能托管一个实例。使用 StateServer,您无法跨集群进行分布式缓存复制。”

Apex Learning 为拥有大量来自同一公共 IP 地址的学生的学校提供​​服务。所有这些学生都会被发送到 Web 服务器,因为负载均衡器根据 IP 地址识别用户。负载均衡器确定来自特定 IP 地址的用户在特定 Web 服务器上创建了会话,并且必须将其发送回同一服务器。

Stanton 指出,“由于会话数据对单个服务器具有粘性,因此可能会出现这样一种情况,即一台服务器的容量为 90%,而另一台服务器的容量仅为 10%。在这些条件下保持适当的负载非常困难。最初我们通过添加更多应用服务器来保持高可用性来解决这个问题,但这并不是一个可以随着业务扩展的长期解决方案。”

汤姆·斯坦顿

“我们的学生几乎 24/7 都在网上。我不认为有人不使用这些解决方案的时间点,即使是在凌晨 3 点。”

汤姆·斯坦顿
技术副总裁

高可用性对 Apex Learning 至关重要,而不仅仅是因为公司对其客户负有合同义务。 学校实施的学习解决方案差异很大。 有时,许多学生在一个教室中使用投影仪共享学习解决方案。 其他时候,教师在具有多个系统的实验室环境中教授课程。 一些学校提供在线个性化教学。 在所有这些情况下,教师都非常依赖 Apex Learning 来确保学生的进步和维持秩序。 Stanton 说:“如果我们停播,没有任何东西可以展示,学生就无法进步。不间断的教学时间对教师和学生的学习环境至关重要。我们无法找到无法满足的解决方案这些严格的正常运行时间要求。”

沿着这种思路,Agarwal 指出,“在上课时间的任何给定时间,我们都有 25,000 名活跃用户。单个 StateServer 无法为我们提供所需的可扩展性。我们需要一种在未来进行扩展的方法,以便我们可以添加更多节点. 因此,可靠性是第一大问题,可扩展性是第二大问题。

 

NCache 解决方案

Apex Learning 探索了几种解决可靠性、可扩展性和高可用性问题的方法。 不过很快就选择了 Alachisoft“ NCache 分布式缓存解决方案,主要基于 NCache 客户。

NCache 为 Apex Learning 提供了所需的关键可靠性,因为 NCache 由于其复制拓扑,可以防止会话数据丢失。

斯坦顿说:“随着 NCache,我们有真正的负载平衡,现在我们可以让 Web 服务器离线,而不会丢失学生会话状态。 这让我们可以让应用服务器离线以应用更新或安全补丁,然后将其放回轮换中,然后对其他服务器重复该过程。 过去,我们必须等待维护窗口才能应用关键补丁。 现在我们可以在工作时间做这项工作,老师和学生甚至都不知道我们在做这件事。”

 

整体可扩展性

也, NCache 将所有会话移动到一组通用的缓存服务器。 它将会话复制到多个位置,因此立即消除了他们对粘性会话的需求。 现在,他们在所有八台服务器上实现了真正的负载平衡。

阿加瓦尔说:“NCache 允许我们完全负载平衡。 每台服务器始终拥有相同数量的会话。” Stanton 补充道,“现在负载分布更加均匀,这极大地帮助了我们系统的可扩展性。”

NCache 事实证明,它比 Apex Learning 所依赖的 StateServer 选项更快、更具可扩展性。 NCache 提供了可伸缩性或更重要的关键特性,即“线性可伸缩性”。 这意味着随着更多服务器的添加,Apex Learning 的容量实际上会成倍增加。 例如,如果它使用一个盒子每秒处理 10,000 笔交易,那么添加第二个盒子应该可以提供接近每秒 20,000 笔交易的总数。 Microsoft 的 StateServer 不提供这种级别的可伸缩性。

维护,密切相关 NCache 可靠性,是 Apex Learning 的另一个好处。 安装后 NCache 并将所有会话数据移动到缓存服务器,他们的应用程序服务器变得无状态,这意味着服务器上没有保存会话信息。 如果应用程序服务器发生意外故障,它可以停止轮换并进行修复,而不会影响客户。 扩展应用服务器场以满足不断增长的业务需求变得更加容易,因为服务器是相同的并且不需要特殊配置。 每个服务器的维护都可以保持最新,而无需安排维护。

 

强大的监控工具,易于遵循的文档

NCache 提供了强大的监控和管理工具,允许 Apex Learning 监控会话活动。 它也很容易安装和配置。

阿加瓦尔说:“NCache 比其他任何人都有更好的文档。 我们只是按照 PDF 文档的说明一步一步地完成了这项工作。 NCache 为我们提供了整个软件包,包括分布式缓存之上的会话存储模块。”

 

Apex 学习向前发展

Apex Learning 全天候 24/7 持续,“我们跨越所有四个时区。这就是 NCache 使我们能够在我们的 Web 服务器上进行滚动发布。 这不是我们可以使用开箱即用的 Microsoft 解决方案完成的事情,”Stanton 说。

2010 年,Apex Learning 为其高可用性添加了教育行业中独一无二的东西:位于佐治亚州亚特兰大的完整灾难恢复站点。 如果西雅图位置的主服务器因任何原因出现故障,灾难恢复站点可以接管,确保学生和他们的老师可以继续他们的工作。 "NCache 也在亚特兰大,”斯坦顿补充说。“我们不会有任何其他方式。

 

接下来做什么?

联系我们

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