繁体   English   中英

扩展ASP.NET数据缓存以在Web场之间共享

[英]Extending ASP.NET data cache to be shared across web farm

我有一个ASP.NET应用程序,它广泛使用ASP.NET缓存API来缓存常用数据。 另外,我使用基于轮询的sql缓存依赖来跟踪到期。

当前设计的缺点是,在Web场环境中,每个Web服务器都有自己的数据缓存,而不是跨服务器共享。

有没有办法可以简单地迁移代码以跨多个服务器共享数据缓存?

我曾经想过使用memcached,但这不适用于sql cache依赖,对吗?

还有其他方法吗?

你看过Windows Server AppFabric(以前的Velocity)吗?

http://blogs.msdn.com/velocity/

您可以使用以下选项 -

  1. 使用此处描述的方法在Web场中同步数据 - http://www.eggheadcafe.com/articles/20030420.asp

  2. 使用分布式缓存方法

  3. 使用企业库缓存。

在我看来, Windows Server AppFabric正是您正在寻找的。 (AKA“Velocity”)。 介绍性文件

Windows Server AppFabric提供分布式内存中应用程序缓存平台,用于开发可伸缩,可用和高性能的应用程序。 AppFabric将内存融合到多台计算机上,为应用程序提供单一的统一缓存视图。 应用程序可以存储任何可序列化的CLR对象,而无需担心对象的存储位置。 只需按需添加更多计算机即可实现可扩展性。 缓存还允许跨群集存储数据副本,从而保护数据免受故障的影响。 它作为通过网络访问的服务运行。 此外,Windows Server AppFabric提供与ASP.NET的无缝集成,使ASP.NET会话对象能够存储在分布式缓存中,而无需写入数据库。 这样可以提高ASP.NET应用程序的性能和可伸缩性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM