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

Going live -- Passer en production

Date de publication: le lundi 6 août 2007 à 16h49
Dernière modification: par Pascal BOYER le dimanche 26 septembre 2010 à 21h18

Performance is influenced both by the software and development stack and the hardware architecture. Weaknesses in any of these components will impact performance, no matter how well the other components perform.
Les performances sont influencées à la fois par les logiciels et les développements réalisés et par l'architecture matérielle. Une faiblesse de l'un de ces composants impactera forcément les performances indépendamment du bon fonctionnement des autres éléments.

Your ability to manage the software stack and the hardware architecture will, of course, depend on your site hosting arrangements. The following section describes platform considerations that should be discussed with your system administrator or hosting partner. By having complete information about the environment where your site will be running, you will be able to anticipate and resolve problems before going live.
Votre capacité à contrôler la partie logicielle ainsi que l'architecture matérielle dépendra bien sûr du système d'hébergement. Le paragraphe suivant aborde des questions relatives à la plate-forme matérielle, questions qui devraient faire l'objet de discussions entre vous et l'administrateur système ou votre hébergeur. En rassemblant toutes les informations sur l'environnement matériel sur lequel tournera votre site vous pourrez anticiper et résoudre les problèmes avant de passer en phase de production.

Hosting architecture / Architecture du système d'hébergement

To determine the environment in which you?ll be working, you should ask your system administrator or hosting partner the following questions:
Pour déterminer l'environnement dans lequel vous travaillerez, vous devez poser à l'administrateur système ou à votre hébergeur les questions suivantes:

  • Do you have a dedicated or shared web hosting platform?
    Avez-vous une plate-forme d'hébergement dédiée ou partagée ?
  • What access method do you have: SSH, FTP, SFTP?
    Qu'elles méthodes d'accès proposez-vous: SSH, FTP, SFTP ?
  • What access rights will you be given: end user, root?
    Quels droits d'accès donnez-vous: ceux d'un utilisateur final, de root ?

If your project requires load balancing, infrastructure is "critical path." Various load balancing configurations can be created depending on the project requirements. Consult an experienced systems engineer for assistance. Articles about load balancing are available in the community section of the ez.no site. For additional assistance, eZ systems? experts have extensive experience with setting up high-availability platforms for eZ Publish.
Si votre projet nécessite la mise en place d'un cluster alors l'infrastructure matérielle devient un point crucial. De nombreuses configurations de répartition de charge peuvent être mises en oeuvre en fonction des besoins du projet. Éventuellement, faites-vous aider en consultant un ingénieur système expérimenté. Des articles  sur la répartition de charge sont disponibles dans la section Community du site ez.no . Des experts de eZ Systems ayant une très grande expérience de la mise en oeuvre de systèmes à haute disponibilité pour eZ Publish peuvent également vous apporter de l'aide.

Software versions and availability / Versions logicielles et disponibilité

The versions and interrelationships between software in the stack are critical to performance.
Les versions des logiciels ainsi que leur interopérabilité sont deux éléments clef en terme de performance.

Apache version / Version de Apache

If you're running Apache version 2, note that some PHP extensions are not fully threadsafe. If at all possible, you should run Apache 1.x. If you must run Apache 2, be sure to run it under pre-fork mode, which prevents Apache 2 from using threads.
Si vous avez installé une version 2 du serveur Apache, sachez que certaines extension PHP  ne sont pas totalement compatibles avec le mode threadé. Dans toute la mesure du possible vous devez utiliser une version 1.x de Apache. Dans le cas d'une version 2, assurez-vous que le serveur soit exécuté en mode prefork afin d'empêcher Apache 2 d'utiliser les threads.

PHP version / Version de PHP

eZ Publish requires PHP 4.3.x for the 3.6 branch, PHP 4.4.x for the 3.7+ branch, and does not run at all on PHP 5.x. Regarding web server integration, SAPI is supported but CGI won?t work correctly due to information required by eZ Publish that is not transmitted by CGI. (FastCGI will be implemented in eZ Publish 4.x as a replacement for CGI.)
La branche 3.6 de eZ Publish requière les versions 4.3.x de PHP alors que les branches 3.7 ou supérieures requièrent une version 4.4.x de PHP. eZ Publish ne fonctionnera pas avec les versions 5 de PHP. Concernant l'intégration du serveur web, SAPI est supporté mais CGI ne fonctionnera pas correctement à causes d'informations requises par eZ Publish qui ne sont pas transmissibles via CGI ( FastCGI  sera implémenté dans eZ Publish 4.x en remplacement de CGI).

PHP configuration / Configuration de PHP

Check the following PHP settings: Max execution time and memory limit should be set high enough (more than 64 MB is recommended for memory limit). Safe mode should always be disabled, as it is too restrictive for eZ Publish. If possible, memory limit should be disabled as it has a small performance impact.
Contrôlez que les deux paramètres PHP suivants: max_execution_time  et memory_limit  ont des valeurs suffisamment élevées (il est recommandé que memory_limit soit paramétré avec une valeur supérieure à 64M). Le mode sécurisé ( safe_mod ) doit toujours être désactivé car trop restrictif pour l'usage de eZ Publish. Il est même préférable de désactiver memory_limit car il impacte légèrement les performances.

opcode cache / Optimisation du système de cache

An opcode cache is strongly recommended when working with eZ Publish. opcode cache stores the result of the PHP interpreter in shared memory, thus avoiding the task of parsing the scripts again the next time the same files are requested. opcode is recommended for most PHP applications. Since some eZ Publish scripts are quite large, opcode caching has a tremendous effect on performance. APC and eAccelerator are the recommended opcode implementations; they should be allocated sufficient shared memory to be effective.
Un système d'optimisation de cache est fortement recommandé lorsque l'on travaille avec eZ Publish. Un tel système d'optimisation stocke, en mémoire partagée, le résultat de l'interpréteur de code PHP évitant ainsi la phase d'analyse des scripts lorsque des mêmes fichiers sont demandés plusieurs fois. Un système d'optimisation de cache est recommandé pour la plupart des applications PHP. En raison de la taille importante de certains scripts de eZ Publish, les effets d'un système d'optimisation de cache sur les performances sont très importants. APC  (Alternative PHP Cache) et eAccelerator  sont les systèmes d'optimisation que nous vous recommandons (veuillez vous repporter à cet article  pour de plus amples informations sur ces deux systèmes) et auxquels vous devez allouer suffisamment de mémoire partagée afin qu'ils soient vraiment efficients.

Software architecture tips and tricks / Architecture logicielle: trucs et astuces

The command-line version of PHP is required in order to run cronjobs and maintenance scripts. Since this is often not installed on production servers, make sure that this component is compiled and has the same parameters as the PHP version used by the web server.
La version en ligne de commande de PHP est requise afin d'exécuter les tâches cron et les scripts de maintenance. Comme cette version de PHP n'est pas souvent installée sur les serveurs en production, assurez-vous que cet élément soit effectivement compilé et qu'il ait les mêmes paramètres que la version PHP utilisée par le serveur web.

If you need advanced multilingual support, you must be using MySQL version 4.1.x or greater to benefit from Unicode storage
Si vous avez besoin du support multilangages, vous devez alors utiliser une version 4.1.x ou supérieure de MySQL afin de bénéficier du stockage Unicode .

Depending on the eZ Publish installation location, you may have to alter DNS configuration to access the site via the desired URLs. Even if DNS modification is not required, mod_rewrite must be enabled on the server, and ideally configured in the website?s virtual host
En fonction de l'emplacement de l'installation de eZ Publish, vous devrez peut-être modifier la configuration du serveur DNS afin d'accéder au site via les URL désirés. Cependant, même si aucune modification DNS n'est requise, le module mod_rewrite doit être activé/chargé sur/par le serveur web. Idéalement, ce module doit être configuré dans la partie hôte virtuel  du site.

An image conversion package must be available on the server. eZ Publish can use ImageMagick or GD (ImageMagick is recommended). If the image conversion tool is configured differently on the production server, you must change the image conversion settings.
Un système de conversion d'images doit également être présent sur le serveur. eZ Publish peut utiliser GD  ou ImageMagick  (qui est recommandé). Bien sûr, si l'outil de manipulation d'images est configuré différemment sur le serveur en production alors vous devez modifier les paramètres relatifs à cet outils.

28 April 2006 10:10:00

Commentaires