29-11-2011 : Remettre dans le débat politique les principes du Conseil National de la Résistance
17-02-2012 : Pétition pour une protection de l’apiculture et des consommateurs face au lobby des OGM
Logo de mon site
Logo de mon site
Faire un don




Right menu

Logo du site ez.no  Logo XHTML 1.O du W3C  Logo XHTML 1.O du W3C  Site francophone officiel de Firefox
zero papier grâce aux catalogues et promos en ligne de bonial

Internal caches / Caches internes

Date de publication: le samedi 12 avril 2008 à 18h12
Dernière modification: par Pascal BOYER le dimanche 26 septembre 2010 à 22h36
« Article précédent: Smart viewcache cleaning / Nettoyage intelligent du cache des vues
» Article suivant: Template overview / Présentation d'un template

25 /01/2007 2:05:00  

There are several caches dealing with internal eZ Publish features that you should enable in order to improve site performance.
Il existe plusieurs caches interagissant avec les fonctionnalités internes de eZ Publish, et vous devez les activer pour accroître les performances de votre site.

Role caches / Les caches des rôles

Voici comment activer ces caches dans le fichier de surcharge site.ini.append.php:

[RoleSettings]
EnableCaching=enabled 

As soon as a new user (registered or anonymous) visits the site, eZ Publish will check whether there is a cached file on disk containing pre-calculated user permissions. If the file does not exist, eZ Publish calculates the new permissions and saves these to a file. On sites with complex role systems, the role cache can reduce the time spent on calculating permissions.
Dès qu'un nouvel utilisateur (enregistré ou anonyme) visite votre site, eZ Publish vérifie qu'il y a un fichier de cache sur le disque contenant les permissions pré-calculées. Si le fichier n'existe pas, eZ Publish calcule les nouvelles permissions et les sauvegarde dans un fichier. Sur les sites ayant un système complexe de rôles, le cache des rôles peut participer à réduire le temps de calcul des permissions.

The cached file is saved on the file system under the directory var/(site)/cache/user-info. 
Le fichier caché est sauvegardé sur le système de fichier dans le répertoire var/(siteaccess)/cache/user-info.

Here is a role cache file example for an Administrator user (object id 14):
Voici un exemple de fichier de cache pour l'utilisateur Administrateur (objet de ID 14):

user-14.cache.php:

<?php
return array (
'*' => 
array (
'*' => 
array (
'*' => '*',
&nbsp;),
),
);
?> 
 

Translation cache / Cache des traductions

Voici comment activer ces caches dans le fichier de surcharge site.ini.append.php:

[RegionalSettings]
TranslationCache=enabled 

The translations of GUI labels in eZ Publish are stored in XML files for each language. When TranslationCache is enabled, the translation cache system will parse the XML translation file (translation.ts) and compile it to native PHP files for faster execution. This significantly reduces load time and should always be used. The translation cache is stored on the file system under the directory var/(site)/cache/translation/. The example below presents one node from the translation.ts file and its PHP equivalent: 
Les traductions des étiquettes de l'interface graphique de eZ Publish sont stockées, pour chaque langues, dans des fichiers XML. Lorsque le paramètre TranslationCache est activé le système de cache de traduction analyse le fichier XML de traduction ( translation.ts) et le compile en fichiers nativement PHP afin de rendre son exécution plus rapide. Cela réduit de façon significative le temps de chargement et devrait toujours être utilisé. Le cache de traduction est stocké sur le système de fichier dans le répertoire var/(siteaccess)/cache/translation/. L'exemple ci-après présente un noeud du fichier translation.ts et son équivalent PHP:

translation.ts 

<message>
<source>Current location</source>
<translation>Obecna lokalizacja</translation>
</message>

Voici l'équivalent issu du fichier de traduction caché:

array (
 'context' => 'design/admin/pagelayout',
 'source' => 'Current location',
 'comment' => '',
 'translation' => 'Obecna lokalizacja',
 'key' => '2efc78139d269b1f0ebf88225e7e20c7',
 )

Template override cache / Cache des templates de surcharge

Voici comment activer ces caches dans le fichier de surcharge site.ini.append.php:

[OverrideSettings]
Cache=enabled 

Data such as template override rules is rather static. If the template override cache system cannot find the override cache file, it will generate a new one and store it to disk. This increases performance because eZ Publish does not have to read override.ini(.append.php) files on each script invocation. The override map is stored on the file system as native PHP under the var directory (var/(site)/cache/override/). One override cache file is generated per siteaccess.
Les données telles que les règles de surcharge de template sont relativement statiques. Si le système de cache des templates de surcharge ne peut trouver le ficher de cache de surcharge alors il en génère un nouveau et le stocke sur le disque. Cela accroît les performances car eZ Publish n'a plus besoin de lire les fichiers override.ini(.append.php) à chaque invocation de script. La table (???) de surcharge est stockée sur le système de fichier au format PHP dans le répertoire var/(siteaccess)/cache/override/. Un fichier de cache de surcharge est créé pour chaque siteaccess.

Commentaires