Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
72:cms_prefetch [2018/07/17 13:33]
bkkr
72:cms_prefetch [2020/10/21 12:48] (current)
Thomas Weinlein [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>​
-<pkit-config>+<stages-config>
  <​properties>​  <​properties>​
  
Line 18: Line 18:
  <​property name="​cms.prefetch.sleepMillisBetweenDocuments"​ value="​0"/>​  <​property name="​cms.prefetch.sleepMillisBetweenDocuments"​ value="​0"/>​
  <​property name="​cms.prefetch.workersCount"​ value="​1"/>​  <​property name="​cms.prefetch.workersCount"​ value="​1"/>​
- <​property name="​cms.prefetch.strategy.class"​ + <​property name="​cms.prefetch.strategy.class"​ value="​AllDocumentsStrategy"/>
- value="​de.methodpark.pkit.cms.prefetch.ClassicAllDocumentsStrategy"/>+
  </​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 ​list:
  
-TBD+  * **cms.prefetch.activated** 
 +      * In case no configuration management system is configured the prefetch service can be completely deactivated. 
 +      * Default: true 
 +  * **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) 
 +      * Default: 60 
 +  * **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 time. This will of course lead to longer running prefetches. 
 +      * Default: 0 
 +  * **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 increased. This will lead to additional CPU load and load on the CMS. 
 +      * Default: 1 
 +  * **cms.prefetch.strategy.class** 
 +      * Specifies the strategy implementation to use to update the document revision information. 
 +      * Default: AllDocumentsStrategy 
 +  * **cms.prefetch.maxParallelTasks.<​CMSType>​** 
 +      * Where <​CMSType>​ is the name of one of the CMS types specified by the cms-type Tag in the cms Section of config.xml. It will only be used by some of the available Strategies. E.g. CMSTypeStrategy. It can be used to restrict the amount of parallel tasks that work on the same type of CMS. 
 +      * Default: 1 
 +  * **cms.prefetch.initialStart.hourOfDay** 
 +      * In case this property exists in config.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:00. It 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. 
 +      * Default: <not set; start immediatly>​
  
 === Strategies === === Strategies ===
Line 34: Line 54:
  
 //Classic all documents available// //Classic all documents available//
 +
 <​code>​ <​code>​
-class=de.methodpark.pkit.cms.prefetch.ClassicAllDocumentsStrategy+class=AllDocumentsStrategy 
 </​code>​ </​code>​
  
Line 41: Line 63:
  
 //Prefetch by CMS type strategy// //Prefetch by CMS type strategy//
 +
 <​code>​ <​code>​
-class=de.methodpark.pkit.cms.prefetch.PrefetchByCMSTypeStrategy+class=CMSTypeStrategy 
 </​code>​ </​code>​
  
Line 50: Line 74:
  
 <​code>​ <​code>​
-<pkit-config>+<stages-config>
  <​properties>​  <​properties>​
  <​property name="​cms.prefetch.workersCount"​ value="​8"/>​  <​property name="​cms.prefetch.workersCount"​ value="​8"/>​
- <​property name="​cms.prefetch.strategy.class"​ + <​property name="​cms.prefetch.strategy.class"​ value="​CMSTypeStrategy"/>
- value="​de.methodpark.pkit.cms.prefetch.PrefetchByCMSTypeStrategy"/>+
  <​property name="​cms.prefetch.maxParallelTasks.SVN"​ value="​1"/>​  <​property name="​cms.prefetch.maxParallelTasks.SVN"​ value="​1"/>​
  <​!--0 is mapped to unlimited, if nothing were configured it would  <​!--0 is mapped to unlimited, if nothing were configured it would
Line 63: Line 86:
  
  <​cms>​ ... </​cms>​  <​cms>​ ... </​cms>​
-</pkit-config>+</stages-config> 
 </​code>​ </​code>​
  
Line 70: Line 94:
 Stages caches two different levels of information regarding files in external configuration management systems. It collects infomation about the folder structure of a CMS and the files contained within these folders. This information is then used for displaying document information such as the version or state of a file. Stages caches two different levels of information regarding files in external configuration management systems. It collects infomation about the folder structure of a CMS and the files contained within these folders. This information is then used for displaying document information such as the version or state of a file.
  
-These caches are - by default - persisted in the file system on the application server that runs Stages. However the administrator may configure these caches to be stored within a relational Database. This increases cache performance significantly. +These caches are persisted in the file system on the application server that runs Stages.
- +
-The configuration of this is done in the Stages configuration file ''<​font inherit/​Courier New,​Courier,​monospace;;​inherit;;​inherit><​PKITHOME>/​WEB-INF/​conf/​PKitCaching-customer.xml</​font>''​ +
- +
-Each cache requires its own configuration and its own database. An example configuration for both MySQL and Oracle database servers can be found within the file.+
  
-//Note//: After changing the cache persistence settings, the Stages configuration ​has to be updated (''<​font inherit/​Courier New,Courier,​monospace;;​inherit;;​inherit><​PKITHOME>/​bin/​updateConfig.bat</​font>''​) ​and Stages has to be restarted.+The cache size has a fixed size but will be configurable from Version 7.4.6.17.5.2.1 and above.