案例分析 - NCache 增强 CampMinder 的缓存数据同步

Telenor 案例研究

NCache 使我们能够在缓存机制中实现所需的容错水平,以及其他好处。 除了 ASP.NET 会话状态管理,我们还能够托管经典的 ASP 会话状态 NCache 使用 COM+ 包装器。 这使我们能够对我们以前无法做到的经典 ASP 应用程序进行负载平衡。 此外,使用锁定机制 NCache 提供,我们已经能够实现分布式并发控制,而无需使用我们的数据库。

斯图尔特·米勒
首席技术官
营地者
CampMinder-徽标
 

国家或地区:
美国

行业:
娱乐

公司简介:
图形友好的 www.campminder.com 网站称,这是一个基于网络的夏令营管理和通信系统,有两个门户。一份提供给营地管理人员,另一份提供给这些营地的客户。实际上,营地管理员登录这个在线管理门户来执行各种管理职责,从确定来到营地的儿童数量到输入每个孩子的详细健康数据。

CampMinder 的首席技术官斯图尔特·米勒 (Stuart Miller) 表示,夏季是一年中最繁忙的时间,因为孩子们在营地,家长们使用第二个门户来获取和交换孩子们的一系列电子邮件、图片和新闻。然而,尽管 CampMinder 从营地管理员那里获得了大量的网站流量,但在秋季、冬季和春季,网站的使用量会减少。

CampMinder 是一个不断发展的组织。 10 年,该组织刚开始设立 2001 个营地,如今已为 300 多个营地提供服务,并且还在不断增加。这种业务增长给 CampMinder 网站的数据库带来了重大挑战。

Alachisoft 产品名称:
NCache

满足客户需求:

  • 高可用性
  • 能够在经典 ASP 和 ASP.NET 之间共享会话状态
  • 整个系统的分布式锁定

关于 Alachisoft:
Alachisoft, 一家总部位于加州的公司,设计、开发和销售 NCache 和 .NET 的 TierDeveloper。 NCache.NET 的集群对象缓存,允许客户将其应用程序的性能提高多达 10 倍,同时增强应用程序的可扩展性和可靠性。 而且,TierDeveloper 是一个用于 .NET 的对象到关系 (O/R) 映射代码生成器,可将开发时间缩短 50%。

您可以下载 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

NCache 为我们的应用程序提供了一个高可用性缓存系统,因此如果我们的一台服务器出现故障,我们不会遇到停机或性能下降的情况。

下载PDF
斯图尔特·米勒

“实施 NCache 与设计我们自己的多节点分布式缓存系统相比,在时间和金钱方面所需的资源要少得多。 它提供了我们主要需要的关键容错能力,而且我们还获得了一些额外的好处。”

斯图尔特·米勒
首席技术官
营地者

挑战

CampMinder 面临的主要挑战之一是将缓存数据与跨多个服务器的数据库保持同步状态。 最初,解决方案是一个内部缓存管理系统,它是足够的,但没有解决容错问题。

Miller 说:“我们自己开发的缓存管理解决方案设计为在单个节点上运行,并使用 Remoting 通过网络进行访问。如果托管该服务的机器下线,我们的应用程序没有翻转,因此我们的系统将被关闭。”

 

NCache 解决方案

在研究了多节点分布式缓存的设计之后,Miller 遇到了 NCache 这不仅提供了所需的容错水平,还提供了其他关键优势。 米勒解释说,“实施 NCache 与设计我们自己的多节点分布式缓存相比,在时间和金钱方面所需的资源要少得多。”

“我们是一个成长中的组织。我在第一次开发迭代中的目标是创建一个没有单点故障的环境。使用早期的解决方案,如果我们丢失了托管缓存服务的机器,整个系统由于单节点架构而受到影响,”米勒说。

NCache 多个节点上的分布式缓存目前提供了一种机制,以便“我们的系统不依赖于单个机器进行缓存。”据米勒说。

CampMinder 有两台服务器正在运行 NCache,两者都包含分布在它们之间的同步缓存数据。 这允许快速、多节点访问和处理该数据,并进一步减轻数据库的压力。

分区副本缓存拓扑
图 1 - 分区副本缓存拓扑

由于 NCache的 Partition Replica 拓扑,如图 1 所示,CampMinder 有一个更快、更健壮的系统,因为缓存现在可以承受单点故障。 分区副本拓扑快速、可扩展,并通过复制提供可靠性。

此外,Liebherr-MCCtec 通过动态缓存集群进一步增强了其高可用性。 实际上,这是在运行时从缓存集群中添加或删除缓存服务器而不停止缓存或客户端应用程序的能力。

Partition Replica拓扑中的Partition意味着缓存被分解成多个段。 每个段存储在不同的缓存服务器上。 如果涉及三个缓存服务器,Partition Replica 将缓存划分为三个分区。 每个分区或每个数据段都作为副本备份在不同的缓存服务器上。

本质上,每台服务器都保留一个活动分区和另一台服务器活动分区的一个副本。

此外,分区副本拓扑通过分区提供可扩展性。 分区意味着服务器越多,可用的存储和事务容量就越大。 它通过智能复制提供可靠性。

至于其他好处 NCache 提供 CampMinder,“我们现在通过 COM+ 接口为 ASP.NET 和 Classic ASP 使用会话状态功能,”Miller 指出。 “这使我们能够使用我们的遗留应用程序,它仍然有部分是用经典 ASP 编写的,并对系统进行负载平衡,”他补充道。

在 CampMinder Classic ASP 驱动的网站中,应用程序保持会话状态在进程中。 和 NCache,该公司现在可以实施分布在机器之间的集中式会话状态管理系统。 如果他们需要关闭特定机器进行维护,他们能够在不终止会话状态和中断客户活动的情况下进行操作。

“我们利用的另一个好处是锁定功能,”米勒说。 “我们利用这一点在整个系统中提供分布式锁定机制。”

NCache的锁定机制提供了在缓存中“锁定”项目的能力。 对该项目的调用可以观察锁的状态,从而为代码块的并发管理或共享数据的操作提供了一种手段。 在此之前,CampMinder 曾使用过该数据库,但 NCache 解决方案更快并释放数据库资源。

 

近期计划

“目前,因为我们的数据库只在一台机器上运行,这是我们的‘单点故障’。当我们开发我们的系统以利用对象缓存机制时 NCache,数据库上的负载将减少,使我们能够扩展我们的客户端负载,并提供更有效的数据库使用。”米勒断言。

接下来做什么?

联系我们

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