mirror of
https://github.com/php/doc-es.git
synced 2026-03-26 08:22:08 +01:00
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@334801 c90b9560-bf6c-de11-be94-00142212c4b1
364 lines
14 KiB
XML
364 lines
14 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: ba08db8805ddb14cbab613c893dd47eacbda22f2 Maintainer: regiemix Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
|
|
<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>
|
|
La extensión SAM actúa de interface de los productos middleware
|
|
IBM Messaging and Queuing utilizando un conjunto de librerías y un código cliente
|
|
llamado XMS. Este paquete está disponible como una descarga gratuíta en
|
|
la guía de soporte de IBM pack IA94. Hay una descripción de los
|
|
links del paquete y de la descarga en el artículo <link xlink:href="&url.ibm.ia94;">
|
|
Introducing XMS - The IBM Message Service API</link>.
|
|
</para>
|
|
<para>
|
|
Si se desea utilizar SAM para acceder a la infrastructura de mensajería
|
|
y encolado de mensajes dentro de un WebSphere MQ entonces será necesario también tener
|
|
instalado un gestor de colas local MQ o tener instalado el paquete cliente
|
|
WebSphere MQ. El paquete cliente está disponible de forma gratuíta como un paquete de
|
|
soporte (<link xlink:href="&url.ibm.mqc6;">MQC6</link>).
|
|
</para>
|
|
<para>
|
|
Si lo que se desea es únicamente experimentar con el envío de mensajes hacia y desde
|
|
las colas de WebSphere Application Server utilizando el protocolo <literal>WebSphere Platform
|
|
Messaging (WPM)</literal> entonces no se necesita instalar el paquete
|
|
MQC6.
|
|
</para>
|
|
<para>
|
|
Después de la instalación de estos paquetes es necesario asegurarse de que el directorio XMS binary
|
|
y, si se están utilizando, el directorio MQ client bin, están incluídos en la variable
|
|
de entorno <envar>PATH</envar> de tal forma que Apache y PHP puedan encontrar las
|
|
.DLLs/bibliotecas necesarias.
|
|
</para>
|
|
</section>
|
|
<!-- }}} -->
|
|
|
|
<!-- {{{ Installation -->
|
|
<section xml:id="sam.installation">
|
|
&reftitle.install;
|
|
<para>
|
|
&pecl.info;
|
|
<link xlink:href="&url.pecl.package;sam">&url.pecl.package;sam</link>.
|
|
</para>
|
|
<para>
|
|
El soporte de la framework SAM y MQTT puede ser construído y utilizado sin ningún otro requisito previo.
|
|
El soporte para otros protocolos a parte de MQTT se proporciona en un conjunto de librerías y un código
|
|
cliente denominado XMS.
|
|
</para>
|
|
<para>
|
|
Si únicamente se desea utilizar el soporte interno MQTT entonces se puede
|
|
configurar SAM como una extensión o simplemente referir a
|
|
<filename>php_sam.php</filename> con una cláusula <function>require</function> o
|
|
<function>require_once</function> en su script PHP. En este caso
|
|
únicamente es necesario instalar el código sin construir la extensión utilizando el instalador
|
|
PEAR:
|
|
<screen>
|
|
<![CDATA[
|
|
pecl install -B SAM
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
|
|
<!-- {{{ Linux -->
|
|
<section xml:id="sam.installation.linux">
|
|
<title>Pasos de la instalación Linux</title>
|
|
<para>
|
|
La extensión SAM se proporciona como un módulo PECL module, el cual
|
|
se puede descargar e instalar en un solo paso como se muestra a continuación:
|
|
<screen>
|
|
<![CDATA[
|
|
pecl install sam
|
|
]]>
|
|
</screen>
|
|
(Dependiendo de su entorno PHP, probablemente será necesario ser "root"
|
|
para hacer esto.)
|
|
</para>
|
|
<para>
|
|
Asegurar que el módulo es cargado por PHP, añadiendo la siguiente línea
|
|
a &php.ini;:
|
|
<screen>
|
|
<![CDATA[
|
|
extension=sam.so
|
|
]]>
|
|
</screen>
|
|
Si se desea utilizar el soporte XMS para acceder a la familia IBM Messaging and Queuing
|
|
se debe también activar la extensión SAM XMS.
|
|
<screen>
|
|
<![CDATA[
|
|
extension=sam_xms.so
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Si no puede utilizar el instalador PEAR, puede recargar la extensión
|
|
y la construcción manualmente:
|
|
<screen>
|
|
<![CDATA[
|
|
pear download sam #downloads sam-<version>.tgz
|
|
tar -xzf sam-<version>.tgz
|
|
cd sam-<version>
|
|
phpize
|
|
./configure
|
|
make
|
|
make install #debería ser "root" para ejecutar este paso
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Para trabajar con el código más reciente, necesitará extraerlo de
|
|
SVN y construirlo manualmente como en el paso anterior.
|
|
</para>
|
|
</section>
|
|
<!-- }}} -->
|
|
<!-- {{{ Windows -->
|
|
<section xml:id="sam.installation.windows">
|
|
<title>Pasos de instalación Windows</title>
|
|
<para>
|
|
Probablemente será necesario construir la extensión SAM para Windows puesto que
|
|
sólo hay un rango liminado de ficheros binarios precompilados disponibles en la web de SAM.
|
|
La extensión puede construirse utilizando los procedimientos estándares de construcción de las extensiones Windows.
|
|
</para>
|
|
<para>
|
|
Necesitará las fuentes de PHP para la versión de PHP para la que se quiere construir
|
|
la extensión SAM, las cuales se pueden obtener de php.net.
|
|
Se debe desempaquetar en un directorio de trabajo cualquiera.
|
|
</para>
|
|
<para>
|
|
También serán necesarias las librerías y cabeceras utilizadas por las extensiones PHP
|
|
disponibles de http://www.php.net/extra/win32build.zip y éstas
|
|
deben ser descomprimidas de tal forma que se sitúen en el directorio de trabajo.
|
|
</para>
|
|
<para>
|
|
Se ha de tener algo parecido a:
|
|
<screen>
|
|
<![CDATA[
|
|
c:\php-build\-
|
|
|
|
|
|---php-5.0.5--|---build
|
|
| |---ext
|
|
| |--- ...
|
|
|
|
|
|---win32build--|---bin
|
|
|---include
|
|
|---lib
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Será necesario un compilador como la versión gratuíta de Visual Studio C++
|
|
Express de la web de Microsoft. También será necesario el
|
|
<literal>SDK Microsoft Windows Platform</literal> que también puede
|
|
descargarse de la web de Microsoft.
|
|
</para>
|
|
<para>
|
|
Obtener el código de la extensión SAM utilizando PEAR (pecl download sam) o
|
|
SVN y copiar los ficheros a un nuevo directorio "sam" bajo el directorio "ext"
|
|
en su árbol de código PHP.
|
|
</para>
|
|
<para>
|
|
Para construir la extensión, abrir una ventana con un entorno de construcción yendo a
|
|
Inicio <screen>menu->Todos los programas->microsoft platform SDK for windows->
|
|
open build environment window->windows 200 build environment->
|
|
set windows 2000 build environment (retail)</screen>
|
|
</para>
|
|
<para>
|
|
Esto debe abrir una ventana de comandos con todas las variables de entorno
|
|
configuradas para acceder a la plataforma SDK etc. Entonces será necesario definir
|
|
las variables de entorno de Visual Studio mediante el comando
|
|
<command>vcvars32.bat</command> en la ventana.
|
|
</para>
|
|
<para>
|
|
Cambiar el directorio a nuestro directorio de trabajo que hemos elegido p.e.
|
|
cd <filename>c:\php-build</filename>. Entonces
|
|
asegurar que las herramientas win32build son accesibles añadiéndolas a la
|
|
variable de entorno <envar>PATH</envar>:
|
|
<screen>
|
|
<![CDATA[
|
|
set PATH=..\win32build\bin;%PATH%
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Ejecutar el comando <command>buildconf.bat</command>. Esto debe reconstruir el fichero
|
|
<filename>configure.js</filename>.
|
|
</para>
|
|
<para>
|
|
Ejecutar el comando <command>cscript</command> con las opciones apropiadas. Para construir únicamente la
|
|
extensión SAM framework y el soporte MQTT utilizar:
|
|
<screen>
|
|
<![CDATA[
|
|
cscript /nologo configure.js --with-sam
|
|
]]>
|
|
</screen>
|
|
Para construir la framework SAM y el soporte XMS support utilizar:
|
|
<screen>
|
|
<![CDATA[
|
|
cscript /nologo configure.js --with-sam --with-sam_xms="c:\program files\ibm\xms"
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
El parámetro adicional pasado para sam_xms es el path de instalación a las
|
|
librerias XMS y el runtime que fue instalado tal y como se describió en el apartado de requisitos previos
|
|
al principio de esta página.
|
|
</para>
|
|
<para>
|
|
Se puede especificar cualquier otro parámetro <command>cscript</command> que sea necesario para
|
|
incluir o excluir elementos de la construcción PHP u opciones seleccionadas.
|
|
</para>
|
|
<para>
|
|
Asumiendo que todo ha ido bien finalmente se debe ejecutar un "make" para la framework SAM!
|
|
<screen>
|
|
<![CDATA[
|
|
nmake php_sam.dll
|
|
]]>
|
|
</screen>
|
|
También si se está utilizando el soporte XMS se debe hacer el "make" de las extensiones sam_xms:
|
|
<screen>
|
|
<![CDATA[
|
|
nmake php_sam_xms.dll
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Si se ha utilizado Visual Studio 2005 para construir las DLLs lea, por favor, los pasos siguientes
|
|
que se especifican abajo para ejecutar antes de continuar más allá.
|
|
</para>
|
|
<para>
|
|
Las DLLs creadas (<filename>php_sam.dll</filename> y opcionalmente
|
|
<filename>php_sam_xms.dll</filename>) pueden copiarse ahora al subdirectorio
|
|
apropiado de su configuración PHP . Asegurarse de que el/los módulo/s son cargados por
|
|
PHP, añadiendo las siguientes líneas a &php.ini;:
|
|
<screen>
|
|
<![CDATA[
|
|
extension=php_sam.dll
|
|
]]>
|
|
</screen>
|
|
Si se desea utilizar el soporte XMS para acceder a la familia IBM Messaging and Queuing
|
|
se debe activar también la extensión SAM XMS.
|
|
<screen>
|
|
<![CDATA[
|
|
extension=php_sam_xms.dll
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
</section>
|
|
<!-- }}} -->
|
|
<!-- {{{ VS2005 -->
|
|
<section xml:id="sam.installation.vs2005">
|
|
<title>Pasos adicionales para Visual Studio 2005</title>
|
|
<para>
|
|
Si se construye la extensión SAM extension con el compilador y las herramientas
|
|
Microsoft Visual Studio 2005 es necesario realizar otro paso en el proceso de
|
|
construcción para asegurar que <filename>php_sam.dll</filename> puede linkar
|
|
con las librerías del runtime C runtime en el momento de ejecución. Este paso incluye
|
|
el manifiesto de dependencia en la DLL. Ir al directorio donde
|
|
se ha generado <filename>php_sam.dll</filename> (habitualmente
|
|
Release_TS o Debug_TS bajo el directorio fuente de PHP) y ejecutar el
|
|
conjuro mágico siguiente:
|
|
<screen>
|
|
<![CDATA[
|
|
mt.exe -manifest php_sam.dll.manifest -outputresource:php_sam.dll;2
|
|
]]>
|
|
</screen>
|
|
Si se están utilizando las capacidades XMS será necesario hacer lo mismo con
|
|
SAM XMS DLL:
|
|
<screen>
|
|
<![CDATA[
|
|
mt.exe -manifest php_sam_xms.dll.manifest -outputresource:php_sam_xms.dll;2
|
|
]]>
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Si se construye la extensión SAM utilizando el compilador y las librerías de
|
|
Microsoft Visual Studio 2005 también será necesario asegurar que los componentes del ejecutable
|
|
están instalados en el sistema en el cual se desea utilizar
|
|
SAM. Esto se puede hacer instalando Visual Studio 2005 o
|
|
utilizando el distribuíble gratuíto
|
|
<link xlink:href="&url.ms.crt;">paquete de ejecución</link>.
|
|
</para>
|
|
</section>
|
|
<!-- }}} -->
|
|
</section>
|
|
<!-- }}} -->
|
|
|
|
<!-- {{{ Configuration -->
|
|
<section xml:id="sam.configuration">
|
|
&reftitle.runtime;
|
|
<section xml:id="sam.configuration.mapping">
|
|
<title>Soporte del protocolo y mapeado</title>
|
|
<para>
|
|
La framework SAM puede ser extendida para soportar otros protocolos de mensajería y mecanismos de conexión. Para añadir
|
|
el soporte para una nueva librería de protocolo o conexión se debe definir una clase de soporte, ya sea como una extensión C
|
|
o como un script PHP, y un script "factory" debe ser creado. La clase de soporte debe implementar todos los
|
|
métodos de la clase SAMConnection aunque ésta no debe heredarlos de SAMConnection. El script de factory
|
|
debe ser llamado por la framework SAM para crear una instancia de la clase implementada. La manera que SAM elige
|
|
que factory llamar está basada en el protocolo especificado como el primer parámetro del método "connect".
|
|
</para>
|
|
<para>
|
|
Por defecto el soporte interno MQTT será utilizado si una llamada connect especifica un protocolo de SAM_MQTT ("mqtt"), para
|
|
cualquier otro protocolo SAM intentará utilizar la extensión de soporte XMS. Para añadir soporte
|
|
para protocolos adicionales o para modificar el comportamiento por defecto, las entradas deben añadirse a &php.ini; en la sección [sam]. El
|
|
mapeado por defecto es equivalente a las siguientes entradas:
|
|
<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>
|
|
Como se puede ver en estos ejemplos las entradas toman la forma "sam.factory.pppp=xxx" donde pppp es el string con el protocolo
|
|
especificado en el método connect y xxx es un sufijo de factory. Nota: SAM define constantes para ese string con el protocolo
|
|
como <literal>SAM_WMQ=wmq</literal>,
|
|
<literal>SAM_WPM=wpm</literal>, <literal>SAM_RTT=rtt</literal>,
|
|
<literal>SAM_MQTT=mqtt</literal>, etc.
|
|
</para>
|
|
<para>
|
|
Cuando se identifique el código de soporte a utilizar en un método connect SAM busca el nombre del protocolo en la entradas del fichero &php.ini;
|
|
y entonces invoca un script de factory llamado <filename>sam_factory_xxx.php</filename>. Si no se encuentra la entrada, el soporte será por defecto 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:"~/.phpdoc/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
|
|
-->
|
|
|