Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
72:cms_prefetch [2018/07/17 13:20] – [CMS Prefetch Configuration] bkkr72:cms_prefetch [2020/08/25 13:16] tssr
Line 1: Line 1:
-Configure the Stages Server+[[:72:configure_stages|Configure the Stages Server]]
  
 ====== CMS Prefetch Configuration ====== ====== CMS Prefetch Configuration ======
Line 8: Line 8:
 === Configuration of the CMS Prefetch === === Configuration of the CMS Prefetch ===
  
-The default configuration of the CMS prefetch is found in ''<font inherit/Courier New,Courier,monospace;;inherit;;inherit><PKITHOME>/WEB-INF/conf/PKitConfig.xml</font>''  file:+The default configuration of the CMS prefetch is found in <font inherit/Courier New,Courier,monospace;;inherit;;inherit>''<Stages installation path>/stages/conf/config.xml''</font> file:<code>
  
-<code> +<stages-config>
-<pkit-config>+
  <properties>  <properties>
  
Line 22: Line 21:
  </properties>  </properties>
  <cms> ... </cms>  <cms> ... </cms>
-</pkit-config>+</stages-config> 
 </code> </code>
  
 A more detailed description of these properties can be found in the following table: A more detailed description of these properties can be found in the following table:
  
-^Property^Description| +TBD 
-|cms.prefetch.activated|   \\ + 
-   In case no configuration management system is configured the prefetch service can be completely deactivated\\ +=== Strategies === 
-    \\ + 
-   Default = true| +The following prefetch strategies are currently available
-|cms.cache.refreshIntervalInMinutes|   \\ + 
-   A new prefetch run will be started after this period of time. (In case of a too short interval it will be delayed until the previous run has finished) \\ +//Classic all documents available// 
-    \\ +<code> 
-   Default = 60| +class=de.methodpark.pkit.cms.prefetch.ClassicAllDocumentsStrategy 
-|cms.cache. lastAccessIntervalForActiveProjectsInDays|   \\ + 
-   The prefetch will only update documents that are referenced by projects that were used (browsed) within the specified time frame\\ +</code> 
-    \\ + 
-   Default = 4| +This strategy ignores the maxParallelTasks properties. (cms.prefetch.maxParallelTasks.<CMSType>) It is the default strategy. In case of a single worker thread the documents are prefetched sequentially. In case of multiple worker threads the prefetch of single documents is arbitrarily distributed among all workers
-|cms.prefetch.sleepMillisBetweenDocuments|   \\ + 
-   In case the prefetch service produces too much CPU load on the Stages server or on the CMS, it can be forced to pause for some timeThis will of course lead to longer running prefetches. \\ +//Prefetch by CMS type strategy// 
-    \\ +<code> 
-   Default = 0| +class=de.methodpark.pkit.cms.prefetch.PrefetchByCMSTypeStrategy 
-|cms.prefetch.workersCount|   \\ + 
-   In case the prefetch does not finish its work within the specified referesh interval, the amount of worker threads utilized by the prefetch can be increasedThis will lead to additional CPU load and load on the CMS\\ +</code> 
-    \\ + 
-   Default 1| +This strategy allows more detailed configuration on the distribution of prefetches dependent on the type of CMS the document is hosted
-|cms.prefetch.strategy.class|   \\ + 
-   Specifies the strategy implementation to use to update the document revision information. \\ +cms.prefetch.maxParallelTasks. allows to specify the maximum number of workers that are allowed to process documents of that CMS type. This is useful in case different CMS types are used by one Stages deployment and the CM systems have very different performance characteristicsSo it is e.g. possible to specify that there is only one worker for SVN and all other workers should be used for IntegrityThis example would need the following configuration: 
-    \\ + 
-   Default: de.methodpark.pkit.cms. prefetch.ClassicAllDocumentsStrategy| +<code> 
-|cms.prefetch.maxParallelTasks.<CMSType>|   \\ +<stages-config> 
-   Where <CMSType> is the name of one of the CMS types specified by the cms-type Tag in the cms Section of PKitConfig.xmlIt will only be used by some of the available StrategiesE.g. PrefetchByCMSTypeStrategy. It can be used to restrict the amount of parallel tasks that work on the same type of CMS. \\ + <properties> 
-    \\ + <property name="cms.prefetch.workersCount" value="8"/> 
-   Default = 1| + <property name="cms.prefetch.strategy.class" 
-|cms.prefetch.initialStart.hourOfDay|   \\ + value="de.methodpark.pkit.cms.prefetch.PrefetchByCMSTypeStrategy"/> 
-   In case this property exists in PKitConfig.xml, scheduling of the initial prefetch run will be delayed until the configured hour of the day. Valid values are (0-23). E.g. for 22 the first prefetch run will be delayed to 22:00It has to be ensured that the Stages service is up and running at this timepoint. If this property does not exist the prefetch will start directly after starting the Stages service\\ + <property name="cms.prefetch.maxParallelTasks.SVN" value="1"/
-    \\ + <!--0 is mapped to unlimited, if nothing were configured it would 
-   Default: <not set; start immediately> \\ + default to 1 --> 
-|+ 
 + <property name="cms.prefetch.maxParallelTasks.Integrity" value="0"/> 
 + </properties> 
 + 
 + <cms... </cms> 
 +</stages-config> 
 + 
 +</code> 
 + 
 +=== Cache Persistence === 
 + 
 +Stages caches two different levels of information regarding files in external configuration management systemsIt collects infomation about the folder structure of a CMS and the files contained within these foldersThis information is then used for displaying document information such as the version or state of a file. 
 + 
 +These caches are persisted in the file system on the application server that runs Stages.
  
-\\+The cache size has a fixed size but will be configurable from Version 7.4.6.1, 7.5.2.1 and above.