Altova FlowForce Server 2024 

Para usar los recursos del servidor de forma más eficiente puede configurar las filas de trabajos. Puede, por ejemplo, limitar el número de instancias de trabajos que se ejecutan en paralelo en un momento dado.

 

Una fila de ejecución es un "procesador" de trabajos que controla cómo se ejecutan las instancias de trabajo. Cada trabajo se asigna a una fila de ejecución de destino para que se ejecute en ella. La fila controla cuántas instancias de trabajo (de todos los trabajos asignados a esa fila) pueden ejecutarse al mismo tiempo y los intervalos entre ejecuciones. Por defecto, la configuración de las filas es local a nivel del trabajo, pero también puede definir filas como objetos independientes que comparten varios trabajos. Cuando se asignan varios trabajos a una misma fila de ejecución, la comparten para ser ejecutados.

 

Las filas usan el mismo mecanismo de acceso de seguridad que otros objetos de configuración de FlowForce. Es decir que un usuario debe tener el privilegio "Definir filas de ejecución de trabajos" para poder crear filas, véase también Definir usuarios y roles. Además, los usuarios pueden ver filas o asignar trabajos a filas sólo si tienen los permisos de contenedor correspondientes (que no son lo mismo que los privilegios), véase también ¿Cómo funcionan los permisos?. Por defecto, cualquier usuario autenticado tiene el permiso "Fila: usar", lo que significa que pueden asignar trabajos a filas. Para restringir el acceso a las filas navegue hasta el contenedor en el que está definida la fila y cambie el permiso del contenedor a "Fila: sin acceso" para el rol authenticated. A continuación asigne el permiso "Fila: usar" a los roles o usuarios que quiera. Para más información consulte Restringir el acceso al contenedor /public.

 

Filas globales y filas locales

Puede crear una fila como objeto independiente (global) o en el marco de un trabajo concreto (local). Una fila local no admite la distribución del procesamiento (clústers). Para que puedan usar esa opción, la fila debe crearse como objeto independiente (externa al trabajo). La distribución del procesamiento sólo está disponible en la edición Advanced Edition. Para más información sobre la creación de filas independientes y locales, siga leyendo.

 

Crear filas globales

Para crear una fila como objeto independiente, siga estas instrucciones:

 

1.Abra la página de configuración y navegue hasta el contenedor en el que quiere crear la fila.

2.Haga clic en Crear y después en Crear fila (imagen siguiente).

fs-create-queue

3.Introduzca un nombre de fila y, si quiere, una descripción.

4.Configure las opciones que considera relevantes. Para más detalles consulte Configurar filas de trabajos más abajo.

5.Por último, haga clic en Guardar.

 

Configurar filas de trabajos

A continuación se pueden ver las opciones de configuración de las filas.

 

Nombre de fila

Introduzca un nombre que identifique a la fila. Este campo es obligatorio. Sólo puede contener letras, dígitos, espacios individuales y los caracteres guion bajo (_), guion (-) y punto (.). No puede empezar ni terminar con un espacio. Este campo sólo se usa si la fila está definida como independiente (no local).

 

Descripción de fila

En este campo opcional puede introducir una descripción del objeto de fila. Este campo sólo se usa si la fila está definida como independiente (no local).

 

Ejecutar en (Advanced Edition)

Indica cómo se deben ejecutar las instancias de los trabajos de esta fila:

 

Maestro o cualquier trabajador: las instancias de trabajos que son parte de esta fila se ejecutan indistintamente en los equipos maestro y trabajador, según los núcleos disponibles.

Sólo maestro: las instancias de trabajos se ejecutan solamente en el equipo maestro.

Cualquier trabajador: las instancias de trabajos se ejecutan en cualquier equipo trabajador disponible, pero nunca en el equipo maestro.

 

Tiempo mínimo entre ejecuciones

Una fila de ejecución ofrece franjas de ejecución. Cada franja ejecuta instancias de trabajo de forma secuencial.

 

La opción Tiempo mínimo entre las ejecuciones mantiene una franja marcada como ocupada durante un breve espacio de tiempo después de que haya terminado el trabajo, de forma que no reciba el siguiente trabajo de inmediato. Esta táctica reduce el rendimiento máximo para esta fila de ejecución pero obtiene tiempo de CPU para otras filas de ejecución y otros procesos del mismo equipo.

 

Máximo de ejecuciones recuperadoras en paralelo

Esta opción define el número de huecos disponibles en la fila. Cada hueco ejecuta instancias de trabajos de forma secuencial, por lo que esta opción determina cuántas instancias del mismo trabajo se ejecutan en paralelo en la fila actual. Tenga en cuenta que el número de instancias que se ejecuten en paralelo tiene un impacto en los recursos disponibles del equipo. Puede aumentar el valor de esta opción para filas que procesan trabajos ligeros que no realizan operaciones de entrada/salida con una gran carga o para trabajos que no necesiten mucho tiempo de CPU. El valor predeterminado (la instancia 1) se puede usar para filas que procesan trabajos que requieren un uso intensivo de los recursos, lo que permite asegurarse de que sólo se procesa uno de esos trabajos pesados cada vez.

 

Esta opción no afecta al número máximo de solicitudes HTTP en paralelo que acepta FlowForce Server (como los de clientes que invocan trabajos expuestos como servicios web). Para más detalles consulte Reconfigurar grupos de hilos en FlowForce Server.

 

 

Máximo de ejecuciones recuperadoras en paralelo (Advanced Edition)

Puede definir varios conjuntos de opciones de fila, cada una con diferentes requisitos de procesamiento, haciendo clic en el botón add. Para cambiar la prioridad de un conjunto de opciones en concreto, haga clic en los botones Hacia arriba up_arrow o Hacia abajo down_arrow. Por ejemplo, puede definir una regla para el caso en que sólo el maestro está disponible y otra regla para el caso en que tanto el maestro como sus trabajadores están disponibles. Esto permite crear un mecanismo de opciones alternativas para la fila que dependen del estado del clúster en un momento dado. Al procesar filas, FlowForce Server vigila constantemente el estado del clúster y sabe si algún trabajador no está disponible. Por lo tanto, si configura varias reglas de dila, FlowForce Server las evaluará en el orden definido, de arriba a abajo, y aplicará la primera regla a la que se le haya asignado al menos un miembro del clúster conforme a la opción Ejecutar en.

 

Ejemplo (Advanced Edition)

Como ejemplo, pensemos en una configuración en la que el clúster incluye un maestro y cuatro equipos trabajadores. La configuración de las filas sería la de la siguiente imagen:

ff_queue_settings

Con la configuración anterior FlowForce procesaría la fila como sigue, en función del estado del clúster en ese momento:

 

Si todos los trabajadores están disponibles, se aplicará la primera regla. Es decir, se permite que se ejecuten hasta 16 instancias de trabajo al mismo tiempo (4 instancias por cada trabajador). El tiempo mínimo entre ejecuciones es de 0 segundos.

Si sólo tres de los trabajadores están disponibles, se seguirá aplicando la primera regla. Es decir, se permite que se ejecuten hasta 12 trabajos simultáneamente y el tiempo mínimo entre ejecuciones es de 0 segundos.

Si no hay ningún trabajador disponible, se aplicará la segunda regla. Es decir, se permite que se ejecute sólo 1 instancia en un momento dado y el tiempo mínimo entre ejecuciones es de 5 segundos.

 

Este tipo de configuración hace que sea posible ejecutar instancias sin trabajadores. Observe que la regla sólo maestro es algo más estricta (sólo una instancia y 5 segundos entre ejecuciones) para no absorber tanta potencia de procesamiento del equipo maestro si fallan todos los trabajadores.

 

Asignar trabajos a filas

Una vez haya configurado la fila, deberá asignarle un trabajo en la página de configuración de trabajos. Para hacerlo siga estos pasos:

 

1.Abra la página de configuración del trabajo que desea asignar a la fila.

2.Navegue hasta la configuración de la fila de trabajos en la parte inferior de la página.

3.Seleccione la opción Seleccionar fila existente e introduzca la ruta de acceso al objeto de fila correspondiente (imagen siguiente).

ff_assign_queue

 

Definir filas locales

Como alternativa a crear filas independientes puede definir las opciones de la fila localmente dentro del trabajo. Para ello seleccione la opción Definir una fila local en la página de configuración del trabajo y indique sus preferencias. La imagen siguiente muestra las opciones predeterminadas. Si elige la opción Definir una fila local, en el momento de ejecución FlowForce Server asignará instancias de este trabajo a una fila predeterminada con la configuración local que especifique.

ffadv_queue

 

Para ver los detalles de las propiedades Tiempo mínimo entre las ejecuciones: y Nº máximo de ejecuciones en paralelo consulte la sección Configurar filas de trabajos más arriba.

 

© 2018-2024 Altova GmbH