AppFabric缓存-分配两个缓存集群是否合理



我对AppFabric Cache的第一印象是,它本质上是一个与memcached相同的分布式哈希表。这种缓存的典型使用模式是,不能保证您的数据会在缓存中(旧条目会被驱逐以腾出空间给新条目),但如果有足够的RAM,它们通常会在。

另一方面,MS提供将会话数据存储在AppFabric缓存中的Web会话状态提供程序。这似乎是一种完全不同的使用模式,因为我们现在要求缓存项永远不要因为内存压力而被逐出。为了实现这一点,MS提供了一种高可用性模式,可以保留所有数据的冗余副本,此外,可以禁用驱逐,这反过来要求我们分配足够的RAM,以确保缓存永远不会达到容量。

应用程序可能会从使用这两种类型/模式的缓存中受益,但据我所知,AppFabric RAM不能在集群或主机内被隔离,因此在这种情况下,web会话状态可能(通常也会)遇到内存压力。我能看到的唯一解决方案是操作两个AppFabric缓存集群,每个模式一个。

上面的内容是否很好地反映了这种情况,或者我是否缺少一些针对这种情况的配置设置?

在appfabric中存储会话不是一个好主意,在尝试此操作时遇到了许多问题(例如由于内存压力数据丢失,多个用户点击缓存来放置数据可能导致数据丢失等),现在开始使用inProc/SqlServer会话状态。

最新更新