session-state - 使用 AppFabric 作为 asp.net 的 session 状态服务器是否使其具有高可用性?

标签 session-state appfabric high-availability

我有一个 4 服务器的 asp.net 场。我想将 AppFabric 用作我的 session 状态服务器,但我不确定它是否会执行我希望它执行的操作。一些问题...

1:如果某些节点崩溃,是否有任何 session 数据丢失?

2:是否每台服务器都有一份 session 数据的副本以备不时之需?

文档指出您需要运行 Windows Server 2008 Enterprise Edition 或更高版本才能获得 AppFabric 的“高可用性”功能。我运行的是 Windows Server 2008 Standard。

3:这是否意味着我需要企业版来保证我的 session 数据在某些节点出现故障时保持安全,或者 AppFabric 是否会在出现故障时自动将 session 数据复制到所有机器上?

最佳答案

我还没有玩过 session 状态位,所以这通常基于 AppFabric。

如果您使用的不是企业版,则无法使用高可用性 :-( 本质上,在非 HA 场景中,每个缓存都“绑定(bind)”到集群中的单个节点,因此您的答案问题是——这取决于哪个节点崩溃了。如果它是那个有缓存的节点,那么是的,你完蛋了。
但是,如果您处于 HA 环境中,则在打开“辅助”选项的情况下创建的任何缓存都有两个分布在节点上的缓存副本,这样如果一个副本出现故障,另一个副本就会恢复负载(并在另一个节点上创建另一个辅助副本)。

AppFabric 的 HA 有很好的概念解释 here .

关于session-state - 使用 AppFabric 作为 asp.net 的 session 状态服务器是否使其具有高可用性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4083235/

相关文章:

asp.net - 为什么我的 tempdb 在服务器重新启动时会重置权限?

tomcat webapp故障转移

java - Tomcat7 并行部署特性 : experiences using it on production servers?

azure - 基于 kubernetes 的高可用、冗余 Redis 集群

java - 验证服务器之间的用户请求

asp.net - 如何确保同一服务器上托管的应用程序之间不共享 session 状态

c# - "I am alive"服务的设计

c# - AppFabric DataCacheFactory() 初始化在 VS2013 中挂起,在 VS2010 和 VS2012 中工作正常

performance - 使用经典 ASP 中的 Microsoft Velocity/Memcache

asp.net - 自上一步以来进程或线程已更改