En general, la integración entre el multi-idioma y el multi-sistema es un gran problema. En general, la gente usará el servicio web para tratar tales problemas de integración, sin importar el estilo. El servicio web, como el estilo RPC o el estilo REST, tiene su propia complejidad. En contraste, Gearman puede lograr un efecto similar y es más fácil de usar. El procesamiento de una solicitud de Gearman implica tres roles: Cliente -> Trabajo -> Trabajador. Cliente: El originador de la solicitud, que puede ser C, PHP
, Perl, MySQL UDF, etc. Trabajo: el despachador de la solicitud, responsable de coordinar el envío de solicitudes del Cliente al Trabajo apropiado. Trabajador: El manejador de la solicitud, que puede ser C, PHP, Perl, etc. Debido a que el Cliente, Worker no restringe el uso del mismo idioma, es propicio para la integración entre el multi-idioma y el multi-sistema. Incluso agregando más trabajadores, podemos implementar fácilmente una arquitectura de equilibrio de carga distribuida para la aplicación. Veamos cómo instalar y ejecutar un ejemplo. Bajo las condiciones limitadas, ejecutamos las tres funciones Cliente, Trabajo y Trabajador en un servidor: Instalar el servidor y la biblioteca Gearman: wget http://launchpad.net/gearmand/trunk/0.8 /+download/gearmand-0.8.tar.gztar zxf gearmand-0.8.tar.gzcd gearmand-0.8./configuremakemake Instalar la extensión PHP de Gearman: wget http://pecl.php.net/get/gearman-0.4.0. Tgztar zxf gearman-0.4.0.tgzcd gearman-0.4.0phpize./configuremakemake install Edite el archivo de configuración php.ini para cargar el módulo correspondiente y hacerlo efectivo: extension = " gearman.so " Iniciar trabajo: gearmand -d si el usuario actual es Para root, debe hacer esto: geomand -d -u root usará el puerto 4730 de forma predeterminada, que se usará a continuación. Nota: Si no puede encontrar la ruta al comando gearand, no olvide confirmar con whereis gearmand. Escriba el contenido del archivo Worker: worker.php de la siguiente manera: <? Php $ worker = new GearmanWorker (); $ worker- > addServer ('127.0.0.1', 4730); $ worker- > addFunction ('reverse', ' My_reverse_function '); while ($ worker- > work ()); function my_reverse_function ($ job) {return strrev ($ job- > workload ());}? ≫ Establezca el fondo para ejecutar el trabajo: php worker.php & Escriba el archivo Cliente: client.php de la siguiente manera: <? Php $ client = new GearmanClient (); $ client- > addServer ('127.0.0.1', 4730); echo $ client- > do ('reverse' , 'Hello World!'), &Quot; \\ n ";? ≫ Ejecutar client: php client.php output:! DlroW olleH Por conveniencia, Worker, Client usa PHP, pero esto no afecta la demostración En aplicaciones prácticas, puede integrar Worker, Client en diferentes idiomas a través de Gearman. Quizás aún desee entender la función de equilibrio de carga mencionada anteriormente: muy simple, solo agregue más de un trabajador, puede escribir varios archivos similares de acuerdo con la forma de worker.php, y configurar diferentes valores de retorno para Identificar la presentación. Luego, inicie estos archivos de Trabajador a su vez y use client.php varias veces para solicitar, encontrará que el Trabajo reenviará la solicitud del Cliente a un Trabajador diferente. Herramientas de la línea de comandos Si cree que instalar algo como PHP es demasiado problemático, también puede experimentar la funcionalidad de Gearman con solo usar la herramienta de la línea de comandos: Iniciar Worker: gearman -w -f wc - wc -l &Ejecutar Cliente: gearman -f wc < /etc /passwd Referencia específica a la documentación oficial, hay algunos PDF buenos.
Cuando hicimos el experimento, grabamos el archivo bin en la tarjeta SD, como el experimento de la l
Hoy, he traído los pasos para agregar rutas estáticas para Linux. ¡Espero ayudar a mis amigos! 1.
Los archivos A.Linux se pueden dividir en cuatro tipos: archivos ordinarios, archivos de director
es simplemente un proceso de ejecución de un programa, es un concepto dinámico. No importa en qué si
¿Cuál es la diferencia entre Linux y BSD?
Linux demasiada solución de archivos abiertos
controlador I2C Análisis Linux
Cinco comandos de búsqueda para Linux
Cómo modificar el nombre de host de Linux
Método de configuración de la política de seguridad común en Linux
Cómo agregar controladores al kernel de Linux
Tutorial de instalación de DirectAdmin
Ingresar la clave al actualizar Win10 no puede activar el sistema
¿Qué debo hacer si la versión oficial de Win10 es corta?
¿Qué debo hacer con la tarjeta de ordenador?
3 soluciones para el reinicio automático después del cierre de Win8.1
Solución de excepción de icono de escritorio de Win7 Daquan
El tiempo de visualización de archivos de Linux es exacto para el segundo
Internet 3G: Notebook + Tarjeta de red 3G y Notebook + Teléfono 3G
Compartir de Windows 70 dominar las habilidades básicas 7 (4)