Sitecore:CM服务器上的共享会话

时间:2017-01-13 12:13:55

标签: sitecore session-state

Sitecore文档站点上的

This page指出“内容管理服务器不支持共享会话状态”,但未提及原因。有人知道那是为什么吗?

我们有两个服务器的测试设置,其中一个服务器是专用内容交付服务器,另一个是组合内容交付/内容管理服务器(选择组合服务器以降低许可证成本)。我们希望了解共享的out-proc会话是否可以在此设置中工作。

1 个答案:

答案 0 :(得分:0)

如上所述,CM服务器不支持共享会话状态,即它们不支持StateServerSQLServer。必须配置CM服务器InProc。其中一个原因是控制编辑。如果内容编辑器在CM服务器之间被退回,则可能无法正确保留某些数据。

由于您正在共享CM和CD的服务器,因此您将无法使用proc。

从安全角度来看,我不建议共享您的CD和CM服务器。您的CM服务器不应在生产环境中可用。额外CD许可证的成本会影响暴露CM服务器的成本。

编辑:从Sitecore 6.5 U5开始,proc会话状态变为实验状态。这意味着你无法获得支持。

我正在为CM支持的答案添加版本。 注意:支持仅是实验性的,我不建议您在Sitecore CM服务器上使用 根据Sitecore知识库https://kb.sitecore.net/articles/901069,已为CM服务器提取了以下支持说明:

  • Sitecore 6.5.0 Update-4 及更早版本 - 仅InProc
  • Sitecore 6.5.0 Update-5 (Service Pack-1) - “自CMS 6.5以来,对使用具有SqlServer,StateServer和其他进程外会话状态模式的Sitecore客户端的实验性支持.0更新-5。 内容编辑和发布等核心功能应该按预期工作,但我们知道许多尚未解决的问题,因此该功能可用于评估此功能,但尚未被视为生产就绪。 “
  • Sitecore 7.0 Update-3 - 进一步修复
  • Sitecore 7.5初始版本 - 找到序列化错误 ERROR Application error. Exception: System.Web.HttpException Message: Unable to serialize the session state. In 'StateServer' and 'SQLServer' mode, ASP.NET will serialize the session state objects, and as a result non-serializable objects or MarshalByRef objects are not permitted. The same restriction applies if similar serialization is done by the custom session state store in 'Custom' mode. Source: System.Web at System.Web.Util.AltSerialization.WriteValueToStream(Object value, BinaryWriter writer) at System.Web.SessionState.SessionStateItemCollection.WriteValueToStreamWithAssert(Object value, BinaryWriter writer) at System.Web.SessionState.SessionStateItemCollection.Serialize(BinaryWriter writer) ...
  • Sitecore 7.5 Update-1 - 修正了序列化和其他修补程序