Files
doc-fr/reference/sam/setup.xml
Damien Seguy efd02abb3d synch with en
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@272706 c90b9560-bf6c-de11-be94-00142212c4b1
2009-01-03 14:27:26 +00:00

352 lines
13 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.9 $ -->
<!-- EN-Revision: 1.3 Maintainer: yannick Status: ready -->
<!-- Reviewed: yes -->
<chapter xml:id="sam.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<!-- {{{ Requirements -->
<section xml:id="sam.requirements">
&reftitle.required;
<para>
L'extension SAM interface la messagerie IBM ainsi que les produits
de mise en file d'attente en utilisant un jeu de bibliothèques et
du code côté client. Ce paquet est disponible en téléchargement
gratuit dans le guide du support IBM pack IA94. Il y a une description
de ce paquet ainsi que des liens de téléchargements dans l'article
"<link xlink:href="&url.ibm.ia94;">Introduction à XMS - L'API IBM
Message Service</link>".
</para>
<para>
Si vous voulez utiliser SAM pour accéder à l'infrastructure de messagerie
et de mise en file d'attente dans un WebSphere MQ, alors vous devriez
également installer un gestionnaire local de mise en file d'attente MQ ou
installer la paquet client WebSphere MQ. Le paquet client est disponible
librement en tant qu'un pack support
(<link xlink:href="&url.ibm.mqc6;">MQC6</link>).
</para>
<para>
Si vous voulez juste tester l'envoi de message depuis et vers une application
WebSphere en utilisant le protocole <literal>WebSphere Platform Messaging</literal>
(WPM), alors, vous n'avez pas besoin d'installer le paquet MQC6.
</para>
<para>
Après avoir installé ces paquets, vous devez vous assurer que le binaire
XMS, si vous l'utilisez, et que le client MQ sont accessibles via la
variable d'environnement PATH afin qu'Apache et PHP puissent trouver
les bibliothèques nécessaires.
</para>
</section>
<!-- }}} -->
<!-- {{{ Installation -->
<section xml:id="sam.installation">
&reftitle.install;
<para>
Le framework SAM et le support MQTT peuvent être construits et utilisés
sans aucun élément supplémentaire. Le support pour les protocoles autres que
MQTT est fourni via un jeu de bibliothèques et du code côté client, comme
XMS.
</para>
<para>
Si vous ne souhaitez utiliser que le support interne MQTT, alors, vous pouvez
construire et configurer SAM en tant qu'extension ou simplement vous référer
à "php_sam.php" grâce aux fonctions <function>require</function> ou <function>require_once</function> dans votre script PHP. Dans ce cas, vous
devez uniquement installer le code, sans construire l'extension via
l'installeur PEAR :
<screen>
<![CDATA[
pecl install -B SAM
]]>
</screen>
</para>
<!-- {{{ Linux -->
<section xml:id='sam.installation.linux'>
<title>Étapes d'installation sous Linux</title>
<para>
L'extension SAM est fournie en tant que module PECL. Vous devriez donc
pouvoir la télécharger et l'installer en une seule étape, comme ceci :
<screen>
<![CDATA[
pecl install sam
]]>
</screen>
(Suivant votre environnement PHP, vous devrez probablement être "root" pour faire ceci.)
</para>
<para>
Assurez-vous que le module a été chargé par PHP, en ajoutant la ligne suivante à votre
&php.ini; :
<screen>
<![CDATA[
extension=sam.so
]]>
</screen>
Si vous voulez utiliser le support XMS afin d'accéder à la messagerie IBM, vous devez
également activer l'extension SAM XMS.
<screen>
<![CDATA[
extension=sam_xms.so
]]>
</screen>
</para>
<para>
Si vous ne pouvez pas utiliser l'installeur PEAR, vous pouvez télécharger l'extension et la construire manuellement :
<screen>
<![CDATA[
pear download sam #téléchargement de sam-<version>.tgz
tar -xzf sam-<version>.tgz
cd sam-<version>
phpize
./configure
make
make install #vous devriez devoir être root pour cette étape
]]>
</screen>
</para>
<para>
Pour avoir la toute dernière source, vous devriez extraire les sources depuis CVS et la construire en utilisant les instructions qui se trouvent
dans ce manuel.
</para>
</section>
<!-- }}} -->
<!-- {{{ Windows -->
<section xml:id='sam.installation.windows'>
<title>Étapes d'installation sous Windows</title>
<para>
Vous devez construire l'extension SAM pour Windows car il
n'existe pas de binaire précompilé. L'extension peut être construite
en utilisant les procédures standards de construction des extensions Windows.
</para>
<para>
Vous devez avoir les sources de PHP pour lesquelles l'extension SAM doit
être utilisée. Les sources doivent être décompressées dans le répertoire
de votre choix.
</para>
<para>
Vous devez également avoir les bibliothèques et en-têtes utilisés par les extensions PHP, disponibles sur http://www.php.net/extra/win32build.zip et
doivent être décompressés dans le même dossier de travail.
</para>
<para>
Vous devriez obtenir quelque chose comme :
<screen>
<![CDATA[
c:\php-build\-
|
|---php-5.0.5--|---build
| |---ext
| |--- ...
|
|---win32build--|---bin
|---include
|---lib
]]>
</screen>
</para>
<para>
Vous devez avoir également un compilateur, par exemple, la version gratuite
de Visual Studio C++ Express que vous trouverez sur le site web de Microsoft. Vous devez aussi avoir le <literal>SDK Microsoft Windows Platform</literal> qui est également disponible sur le site web de
Microsoft.
</para>
<para>
Téléchargez les sources de l'extension SAM (pear download sam) ou en utilisant CVS et copiez les fichiers dans un nouveau dossier "sam" du
dossier "ext" des sources PHP.
</para>
<para>
Pour construire l'extension, ouvrez un environnement de construction Windows
via <screen>menu->Tous les programmes->microsoft platform SDK for windows->
open build environment window->windows 200 build environment->
set windows 2000 build environment (retail)</screen>
</para>
<para>
Ceci devrait ouvrir une fenêtre de commande avec toutes les variables d'environnements définies afin d'accéder à la plate-forme SDK, etc. Vous devez ensuite définir les variables d'environnements pour Visual Studio en
lançant la commande "vcvars32.bat" dans la fenêtre.
</para>
<para>
Déplacez-vous dans votre dossier de travail, e.g. cd <filename>c:\php-build</filename>. Ensuite,
assurez-vous que les utilitaires win32build soient accessibles en ajoutant la
variable d'environnement suivante :
<screen>
<![CDATA[
set PATH=..\win32build\bin;%PATH%
]]>
</screen>
</para>
<para>
Exécutez la commande <command>buildconf.bat</command>. Ceci devrait reconstruire
le fichier <filename>configure.js</filename>.
</para>
<para>
Exécutez la commande <command>cscript</command> avec les options appropriées. Pour uniquement construire
l'extension SAM et le support MQTT, utilisez :
<screen>
<![CDATA[
cscript /nologo configure.js --with-sam
]]>
</screen>
Pour construire le framework SAM et le support XMS, utilisez :
<screen>
<![CDATA[
cscript /nologo configure.js --with-sam --with-sam_xms="c:\program files\ibm\xms"
]]>
</screen>
</para>
<para>
Le paramètre additionnel passé à SAM est le chemin d'installation vers
les bibliothèques XMS et d'exécution qui ont été installées comme décrit
en début de ce manuel.
</para>
<para>
Vous pouvez spécifier d'autres paramètres <command>cscript</command> dont vous avez besoin pour inclure et exclure des éléments de votre construction de PHP ou des options sélectionnées.
</para>
<para>
En supposant que tout est Ok jusqu'ici pour vous, vous pouvez maintenant lancer la construction !
<screen>
<![CDATA[
nmake php_sam.dll
]]>
</screen>
De plus, si vous utilisez le support XMS, vous devrez construire l'extension sam_xms :
<screen>
<![CDATA[
nmake php_sam_xms.dll
]]>
</screen>
</para>
<para>
Si vous avez utiliser Visual Studio 2005 pour construire les bibliothèques DLL, alors lisez ce qui suit pour les étapes additionnelles que vous devez
effectuer avant d'aller plus loin.
</para>
<para>
Les bibliothèques DLLs créées (<filename>php_sam.dll</filename>, et, optionnellement <filename>php_sam_xms.dll</filename>)
peuvent maintenant être copiées dans le sous répertoire approprié de votre
installation de PHP. Assurez-vous que le(s) module(s) est(sont) chargé(s) par PHP,
en ajoutant la ligne suivante à votre &php.ini; :
<screen>
<![CDATA[
extension=php_sam.dll
]]>
</screen>
Si vous voulez utiliser le support XMS pour accéder à IBM Messaging and Queuing family, vous devez également activer l'extension SAM XMS.
<screen>
<![CDATA[
extension=php_sam_xms.dll
]]>
</screen>
</para>
</section>
<!-- }}} -->
<!-- {{{ VS2005 -->
<section xml:id='sam.installation.VS2005'>
<title>Étapes additionnelles pour Visual Studio 2005</title>
<para>
Si vous construisez l'extension SAM avec le compilateur et les outils Microsoft Visual
Studio 2005, vous devez effectuer une étape supplémentaire dans le processus de
compilation afin de vous assurer que la bibliothèque <filename>php_sam.dll</filename>
soit capable de se lier aux bibliothèques C durant l'exécution. Cette étape ajoute
la dépendance directement dans la DLL. Déplacez-vous dans le répertoire où la bibliothèque
<filename>php_sam.dll</filename> a été générée (habituellement le dossier Release_TS
ou Debug_TS du dossier des sources PHP) et exécutez l'incantation magique suivante :
<screen>
<![CDATA[
mt.exe -manifest php_sam.dll.manifest -outputresource:php_sam.dll;2
]]>
</screen>
Si vous utilisez les capacités XMS, vous devez effectuer la même chose
avec la bibliothèque SAM XMS :
<screen>
<![CDATA[
mt.exe -manifest php_sam_xms.dll.manifest -outputresource:php_sam_xms.dll;2
]]>
</screen>
</para>
<para>
Si vous construisez l'extension SAM en utilisant le compilateur et les bibliothèques
Microsoft Visual Studio 2005, vous devriez aussi vous assurer que les composants
d'exécution sont présents sur le système sur lequel vous voulez utiliser SAM. Ceci peut
être fait en installation Visual Studio 2005 ou en utilisant le <link xlink:href="&url.ms.crt;">paquet
d'exécution</link> librement distribuable.
</para>
</section>
<!-- }}} -->
</section>
<!-- }}} -->
<!-- {{{ Configuration -->
<section xml:id="sam.configuration">
&reftitle.runtime;
<section xml:id="sam.configuration.mapping">
<title>Support des protocoles et liage</title>
<para>
Le framework SAM peut être étendu pour supporter d'autres protocoles de messagerie et d'autre mécanismes de connexion. Pour ajouter le support d'un
nouveau protocole ou connexion, une classe doit être définie, soit sous la
forme d'une extension C, soit sous la forme d'un script PHP, et un script
"usine" doit être créé. La classe doit implémenter toutes les méthodes de la
classe SAMConnection, car elle n'hérite pas de la classe SAMConnection. Le
script d'usine doit être appelé par le framework SAM pour créer une instance
de la classe implémentée. La façon dont SAM choisit quel utilitaire à
appeler, est basée sur le protocole spécifié en tant que premier
paramètre de l'appel à "connect".
</para>
<para>
Par défaut, le support interne MQTT sera utilisé si une connexion est spécifiée à un protocole
SAM_MQTT ("mqtt") ; pour les autres protocoles, SAM tente d'utiliser l'extension XMS. Pour
ajouter le support de protocoles supplémentaires ou pour modifier le comportement par défaut,
des entrées doivent être ajoutées dans le &php.ini; dans la section [sam]. Le liage par défaut
est équivalent aux entrées suivantes :
<screen>
<![CDATA[
[sam]
sam.factory.mqtt=mqtt
sam.factory.wmq=xms
sam.factory.wmq:client=xms
sam.factory.wmq:bindings=xms
sam.factory.wpm=xms
sam.factory.rtt=xms
]]>
</screen>
Comme nous pouvons le voir dans ces exemples, les entrées prennent la forme
de "sam.factory.pppp=xxx" où pppp est le protocole spécifié lors de l'appel
à la connexion et xxx est le suffixe d'usine. Note : SAM définit des
constantes pour ces protocoles, comme SAM_WMQ=wmq, SAM_WPM=wpm, SAM_RTT=rtt,
SAM_MQTT=mqtt, etc.
</para>
<para>
Lors de l'identification du code support à utiliser lors d'un appel à connexion, SAM cherche
le nom du protocole dans les entrées du &php.ini;, puis, invoque un script d'usine nommé
sam_factory_xxx.php. Si aucune entrée n'est trouvée, le support par défaut utilisé sera XMS.
</para>
</section>
</section>
<!-- }}} -->
<!-- {{{ Resources -->
<section xml:id="sam.resources">
&reftitle.resources;
&no.resource;
</section>
<!-- }}} -->
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->