借助 ScaleOut Software 的分布式缓存解决方案,为服务器群开发快速、可扩展的应用程序





5.00/5 (1投票)
服务器群应用程序必须始终提供快速响应时间,同时性能必须随着服务器群的增长而无缝扩展。了解如何使用 ScaleOut StateServer 直观而强大的功能,为您的应用程序带来极速性能,同时实现您的开发目标。
ScaleOut StateServer |
![]() |
为服务器群开发快速、可扩展的应用程序可能是一个巨大的挑战。应用程序必须始终提供快速响应时间,并且性能必须随着服务器群的增长而无缝扩展,以处理不断增加的负载。开发人员发现,实现其性能目标的关键是使用分布式缓存。这使得快速访问的、快速变化的数据更接近所需位置,并在整个服务器群中全局可访问。这些特性既能最大限度地提高性能,又能简化设计。
凭借其极速性能、全面的开发 API 和自管理功能,ScaleOut StateServer 提供了当今领先的 .NET 分布式缓存解决方案。ScaleOut State Server 提供了优于所有“进程外”存储替代方案的快速访问时间,并且其吞吐量可无瓶颈地扩展,以处理最大的应用程序负载。其紧密集成、自管理的架构使其易于使用,并让您能够专注于应用程序开发。
以下段落解释了 ScaleOut StateServer 的作用以及它如何帮助您实现性能和可用性目标。
可扩展、内存中、分布式缓存
ScaleOut StateServer 作为分布式软件服务运行在您的服务器群中的每个 Web 或应用程序服务器上,以在内存中缓存数据对象,并使用 256 位识别密钥使其在整个服务器群中全局可访问。这些数据对象包含序列化的程序数据,例如 ASP.NET 会话数据、业务逻辑对象和数据集。存储的对象可以从服务器群中的任何服务器访问。
安装后,ScaleOut StateServer 会自动平衡服务器群中每个服务器使用的存储量,根据您需要的量调整每个服务器的相对使用量。当运行 ScaleOut StateServer 的新服务器添加到 Web 群时,它们会自动扩展其存储容量和性能。
ScaleOut StateServer 通过在服务器群中的服务器之间对缓存数据进行分区和动态负载平衡来扩展吞吐量并保持快速响应时间。这可以随着服务器群的增长而扩展存储容量,并允许同时访问存储在不同服务器上的多个数据对象。当新服务器添加到服务器群时,ScaleOut StateServer 会自动将服务器集成到存储中,并将分布式缓存的一部分迁移到其中,动态调整服务器群中每个服务器存储和管理的数据量。
突破性性能
ScaleOut StateServer 的可扩展分布式缓存提供了所有“进程外”解决方案(包括数据库服务器和独立缓存服务器)中最快的访问时间。性能测试表明,ScaleOut StateServer 在重复访问存储数据方面迅速超越了竞争对手。
ScaleOut StateServer 与竞争对手真正不同之处在于,它能够随着服务器群的增长而扩展其存储容量和吞吐量。随着服务器群的增长以处理额外负载,它们需要避免限制可扩展性的瓶颈。ScaleOut StateServer 从内而外设计,以扩展其性能的各个方面。测试证实,随着服务器添加到服务器群中,其吞吐量呈线性扩展,以保持较低的访问时间。这使您的服务器群能够提供最高的性能,同时避免数据库服务器不必要的访问负载。
高可用性专利技术
缓存数据的高可用性对于任务关键型应用程序至关重要。ScaleOut StateServer 通过在最多两个额外服务器上复制所有缓存对象,确保缓存数据永远不会丢失——即使您的服务器群中的服务器发生故障。如果服务器脱机或失去网络连接,ScaleOut StateServer 会自动从存储在服务器群中其他服务器上的副本中检索其会话对象,并根据需要创建新副本以保持冗余存储。为了避免传统主/从复制方案的“脑裂”问题,ScaleOut StateServer 采用了专利技术,保证复制对象始终具有最新的更新。
ScaleOut StateServer 还使用一种正在申请专利的可扩展心跳协议,该协议可以快速有效地检测服务器故障,而不会用多播心跳数据包淹没您的网络。心跳故障会自动触发 ScaleOut StateServer 的“自愈”技术,该技术可以快速恢复对缓存分区的访问,并动态地重新平衡整个服务器群的存储负载。
为了简化应用程序开发并降低管理成本,ScaleOut StateServer 自动处理数据复制和恢复的所有方面。其智能复制架构专门设计用于随着服务器群的增长保持高性能和可扩展存储。每个服务器上最近访问的数据对象的内部缓存使数据更接近应用程序,避免了您选择复制方案的需要。ScaleOut StateServer 让您能够专注于应用程序开发,而不是分布式缓存的细节。
简化管理
ScaleOut StateServer 的自管理功能使安装快速,并降低了您的管理成本。服务器自动连接在一起形成或扩展“群范围”存储。ScaleOut StateServer 自动平衡其存储工作负载并采用内部缓存以保持高性能,并且在服务器发生故障后自动恢复和“自愈”。应用程序可以通过存储中的所有服务器统一访问和更新任何存储的数据对象。
您可以使用其易于使用的 GUI 控制台或命令行控制程序,从服务器群中的任何服务器或从远程连接的工作站管理 ScaleOut StateServer。这些管理工具让您可以完全控制 ScaleOut StateServer 的操作,通知您故障和配置更改,并确保与您的 Web 负载均衡器密切协调。
命令行程序提供了管理控制台的所有功能,其中包含可以从命令提示符运行或合并到命令行脚本中的单独命令。
全面的 API
.NET 和 C/C++ 应用程序可以使用产品随附的全面应用程序编程接口 (API) 直接访问 ScaleOut StateServer 的分布式缓存。.NET API 支持所有 .NET 语言,包括 C#、C++ 和 Visual Basic。其他 API 支持独立(“非托管代码”)C/C++ 应用程序。
ScaleOut StateServer 的 API 提供了对分布式存储的简单直接访问,以实现
- 存储由 256 位密钥标识的序列化数据对象,
- 读取以前存储的数据对象,
- 更新以前存储的数据对象,以及
- 从存储中删除数据对象。
ScaleOut StateServer 包含了广泛而灵活的缓存功能,为您提供了构建强大服务器群应用程序所需的灵活性,包括
- 分布式对象锁定,用于同步多个服务器的访问,
- 可选的对象在滑动或固定超时、LRU 内存回收或对象依赖项更改后过期,
- 用于发出对象过期信号的异步事件,
- 使用 ScaleOut GeoServer 选项可选的自动复制到远程缓存,以及
- 可选的最近访问的、反序列化数据的“进程内”缓存。
ScaleOut StateServer 充分利用其内置的可扩展性和高可用性,自动在服务器群中分配事件处理负载,并确保即使发生服务器或网络中断,异步事件也始终会传递。
摘要
服务器群应用程序有潜力提供处理快速增长的任务关键型工作负载所需的性能和可扩展性。ScaleOut StateServer 的分布式缓存让您可以通过始终将快速变化的数据保存在应用程序所需的位置来释放这一潜力。ScaleOut StateServer 可以为您的应用程序带来巨大的性能提升,同时精心保护您的缓存数据。也许最重要的是,ScaleOut StateServer 使分布式缓存易于使用和管理。
如果您的应用程序只使用 ASP.NET 会话状态,并且不需要 ScaleOut StateServer 的全面 API,请考虑从 ScaleOut SessionServer 开始,然后随着需求的发展升级到 ScaleOut StateServer。
立即下载,亲自尝试分布式缓存! |
![]() |
阅读 ScaleOut 白皮书“在服务器群上扩展 Web 应用程序需要分布式缓存”