4

最近的Open Apereo 14 会议有一个关于 Sakai 10 中的分布式缓存和会话复制的会议:

http://lanyrd.com/2014/apereo/sdbbct/

我需要对 Sakai 10 采取哪些步骤才能允许会话复制?

4

1 回答 1

4

会话复制是 Sakai 10 的一部分,但默认关闭。要启用它,您将需要:

  1. Terracotta 安装、配置和运行(目前需要 3.7.6 版本http://fossies.org/linux/misc/terracotta-3.7.6.tar.gz
  2. 负载均衡器后面的多个 Tomcat 服务器
  3. 以下 sakai.properties 设置集(可在此处找到https://source.sakaiproject.org/svn/config/trunk/configuration/bundles/src/bundle/org/sakaiproject/config/bundle/default.sakai.properties):

    # CLUSTER CACHING (KNL-1184)
    # WARNING: this requires an external distributed caching server
    # Enable distributed caching
    # DEFAULT: false
    #memory.cluster.enabled=true
    
    # The URLs of the distributed cache servers
    #memory.cluster.server.urls.count=2
    #memory.cluster.server.urls.1={CACHE_SERVER_URL_1}:9510
    #memory.cluster.server.urls.2={CACHE_SERVER_URL_2}:9511
    
    ## The caches that will be using the distributed cache.
    ## SESSION failover: org.sakaiproject.tool.impl.RebuildBreakdownService.cache
    #memory.cluster.names.count=1
    #memory.cluster.names.1=org.sakaiproject.tool.impl.RebuildBreakdownService.cache
    
    ## Any Cache properties below that are not set will use the default values
    # Valid properties include: maxEntries(int>0), timeToIdle(int>0, seconds), timeToLive(int>0, seconds), eternal(true|false)
    # Defaults: maxEntries=10000, timeToIdle=600, timeToLive=600, eternal=false
    # Configure cluster caches using: memory.cluster.{cacheName}.{property)={value}
    
    # Session replication caching properties
    #memory.cluster.org.sakaiproject.tool.impl.RebuildBreakdownService.cache.maxEntries=50000
    #memory.cluster.org.sakaiproject.tool.impl.RebuildBreakdownService.cache.timeToIdle=3600
    #memory.cluster.org.sakaiproject.tool.impl.RebuildBreakdownService.cache.timeToLive=10800
    
    ## Session Replication settings
    ## WARNING: This requires a distribution mechanism of some kind (currently requires a distributed cache)
    ## NOTES:
    ## cache: org.sakaiproject.tool.impl.RebuildBreakdownService.cache must be set to a distributed cache (see memory.cluster)
    ## cache: org.sakaiproject.tool.impl.RebuildBreakdownService.stash should be configured to last as long
    ##        as your user might need to navigate to JSF or other on-demand session tools after landing on a new server
    # Enable session cluster replication (see notes above)
    # Default: false
    #session.cluster.replication=true
    ## Performance tuning settings below - be careful with these numbers as adjusting them downward can create heavy load
    # Tuning setting, minimum seconds old the session must be before it will be replicated
    # Default: 20
    #session.cluster.minSecsOldToStore=20
    # Tuning setting, minimum seconds that must pass before session data is updated (since last store)
    # NOTE: certain events will cause the session data to be updated in the store regardless of this setting
    # Default: 10
    #session.cluster.minSecsBetweenStores=10
    # Tuning setting, minimum seconds after a session has been rebuilt from the store before it can be updated in the storage again
    # Default: 30
    #session.cluster.minSecsAfterRebuild=30
    

请注意,Sakai 中的大多数工具都会在会话中存储页面状态的项目。JSF、Wicket 和 Velocity 就是明确的例子。在大多数情况下,用户将被送回工具的主页,但他们将保持登录状态,在当前站点和当前工具中。

于 2014-06-10T18:12:45.487 回答