Difference between revisions of "Setup:Installation Manual/Optimization/Caching"

[quality revision][quality revision]
(Tag: 2017 source edit)
(Tag: 2017 source edit)
 


This document describes different caching options to enhance the performance of your BlueSpice installation.

Tips for the Document[edit | edit source]

  • Please, read this manual completely and work through the single installation steps one after another. 
  • For editing the configuration files with a text editor, the files must be saved in UTF-8 coding without BOM (Byte Order Mark).
  • The placeholder <installpath-bluespice> stands for the path to your BlueSpice installation, e.g C:\inetpub\wwwroot\bluespice (Windows) or /var/www/bluespice (Linux).

Linux vs. Windows[edit | edit source]

Please note that with equal hardware conditions, BlueSpice empirically runs more performantly on Linux than on Windows servers.

Indicate Cache-Directory[edit | edit source]

This forces BlueSpice to use the filesystem instead of the database for some internal caches. To do this, create the file <installpath-bluespice>/settings.d/001-Directories.php and add the following content:

                    <?php

$wgCacheDirectory = "$IP/cache";

                

Save and close the file.


Hint.jpg
Note that the directory "cache" in <installpath-bluespice> must be writable by the web server. For more information, read the file system permissions.

Name Resolution of the Database[edit | edit source]

If this hasn't already been done while setting up MediaWiki, please make sure that the database server will be adressed via IP if it runs on the same server than BlueSpice. Especially Windows has problems with the resolution of "localhost".

To do this, open <installpath-bluespice>/LocalSettings.php and locate the variable $wgDBserver. The line should ideally be:

$wgDBserver = "127.0.0.1";

Activate Memcached[edit | edit source]

Create the file <installpath-bluespice>/settings.d/001-Memcached.php and add the following content:

                    <?php

$wgMainCacheType = CACHE_MEMCACHED;
$wgSessionCacheType = CACHE_DB;
$wgMemCachedServers = [ "127.0.0.1:11211" ];

                

Save and close the file.

Hint.jpg
The prerequisite is an installed and configured memcached server on the BlueSpice server. Read the memcached article for more information.

Increase PHP Memory Limit[edit | edit source]

A higher memory limit of PHP results in a faster execution. ¶ This can be changed in php.ini. Locate and adjust the following option:

                memory_limit = 512M (means 512 MB - varies from the available memory)

            

After saving and closing php.ini, the web server must be restarted.

Activate Bytecode Cache in PHP[edit | edit source]

Since PHP 5.5 the bytecode cache "opcache" is included.

This needs to be activated in the php.ini first. Check if the module is integrated there. This is done via the line: 

zend_extension=opcache.dll (Windows)
zend_extension=opcache.so (Linux)
Hint.jpg
Please also note the specification of the distributor for activating PHP modules under Linux.



Please, do the following configuration of the opcache in php.ini. Normally, all options should already exist, but are commented out by semicolon (;) at the beginning of the line. Locate the respective option in php.ini, remove the semicolon at the beginning of the line and adjust the settings as follows:

                opcache.enable=1
opcache.memory_consumption=512 (means 512 MB - varies from the available memory)
opcache.max_accelerated_files=5000
opcache.validate_timestamps=1
opcache.revalidate_freq=2

            

After saving and closing php.ini, the web server must be restarted.

Deactivate JobQueue[edit | edit source]

For this, read the paragraph "runJobs.php" in the "Cronjobs" article.

{{DISPLAYTITLE:Caching}}
        
        __TOC__
        

        This document describes different caching options to enhance the performance of your BlueSpice installation.
        

        ==Tips for the Document==
        
        * Please, read this manual completely and work through the single installation steps one after another. 
        
        * For editing the configuration files with a text editor, the files must be saved in UTF-8 coding without BOM (Byte Order Mark).
        
        * The placeholder <code>&lt;installpath-bluespice&gt;</code> stands for the path to your BlueSpice installation, e.g <code>C:\inetpub\wwwroot\bluespice</code> (Windows) or <code>/var/www/bluespice</code> (Linux).
        

        ==Linux vs. Windows==
        
        Please note that with equal hardware conditions, BlueSpice empirically runs more performantly on Linux than on Windows servers.
        

        ==Indicate Cache-Directory==
        
        This forces BlueSpice to use the filesystem instead of the database for some internal caches.
        
        To do this, create the file <code>&lt;installpath-bluespice&gt;</code>/settings.d/001-Directories.php and add the following content:
        
<source lang="php">
        <?php
            

            $wgCacheDirectory = "$IP/cache";
            </source>
        

        Save and close the file.
        

        [[File:Hint.jpg|left]] '''Note that the directory "cache" in <code>&lt;installpath-bluespice&gt;</code> must be writable by the web server. For more information, read the [[Setup:Installation Guide/Security Settings/File System Permissions|file system permissions]].'''
        

        ==Name Resolution of the Database==
        
        If this hasn't already been done while setting up MediaWiki, please make sure that the database server will be adressed via IP if it runs on the same server than BlueSpice. Especially Windows has problems with the resolution of "localhost".
        

        To do this, open <code>&lt;installpath-bluespice&gt;</code>/LocalSettings.php and locate the variable '''$wgDBserver'''. The line should ideally be:
        

         $wgDBserver = "127.0.0.1";
        

        ==Activate Memcached==
        
        Create the file <code>&lt;installpath-bluespice&gt;</code>/settings.d/001-Memcached.php and add the following content:
        
<source lang="php">
        <?php
            

            $wgMainCacheType = CACHE_MEMCACHED;
            
            $wgSessionCacheType = CACHE_DB;
            
            $wgMemCachedServers = [ "127.0.0.1:11211" ];
            </source>
        

        Save and close the file.<br /><br />
        

        [[File:Hint.jpg|left]]'''The prerequisite is an installed and configured memcached server on the BlueSpice server. Read the [[Setup:Installation _Guide/System Configuration/_Preparation/Linux/Memcached|memcached]] article for more information.'''
        

        ==Increase PHP Memory Limit==
        
        A higher memory limit of PHP results in a faster execution. ¶ This can be changed in php.ini. Locate and adjust the following option:
        

         memory_limit = 512M ''(means 512 MB - varies from the available memory)''
        

        After saving and closing php.ini, the web server must be restarted.
        

        ==Activate Bytecode Cache in PHP==
        
        Since PHP 5.5 the bytecode cache "opcache" is included.
        

        This needs to be activated in the php.ini first. Check if the module is integrated there. This is done via the line: 
        

         zend_extension=opcache.dll (Windows)
        
         zend_extension=opcache.so (Linux)
        

        [[File:Hint.jpg|left]] '''Please also note the specification of the distributor for activating PHP modules under Linux.'''
        



        Please, do the following configuration of the opcache in php.ini. Normally, all options should already exist, but are commented out by semicolon (;) at the beginning of the line. Locate the respective option in php.ini, remove the semicolon at the beginning of the line and adjust the settings as follows:
        

         opcache.enable=1
        
         opcache.memory_consumption=512 ''(means 512 MB - varies from the available memory)''
        
         opcache.max_accelerated_files=5000
        
         opcache.validate_timestamps=1
        
         opcache.revalidate_freq=2
        

        After saving and closing php.ini, the web server must be restarted.
        

        ==Deactivate JobQueue==
        
        For this, read the [[Setup:Installation Manual/Optimization/Cronjobs#runJobs.php|paragraph "runJobs.php" in the "Cronjobs" article]].
        

        [[en:{{FULLPAGENAME}}]][[de:Setup:Installationsanleitung/Optimierungen/Caching]]
Line 48: Line 48:
 
Save and close the file.<br /><br />
 
Save and close the file.<br /><br />
  
[[File:Hint.jpg|left]]'''The prerequisite is an installed and configured memcached server on the BlueSpice server. Read the [[Setup:Installation Guide/System Configuration/Memcached|memcached]] article for more information.'''
+
[[File:Hint.jpg|left]]'''The prerequisite is an installed and configured memcached server on the BlueSpice server. Read the [[Setup:Installation_Guide/System_Preparation/Linux/Memcached|memcached]] article for more information.'''
  
 
==Increase PHP Memory Limit==
 
==Increase PHP Memory Limit==

Attachments

Discussions