Precauciones Y Métodos Para la Ejecución Paralela de Solicitudes Y Procesos HTTP Dentro de Los Servicios Web

Actualizado el Jul 6, 2026

Ambiente

Software

  • LabVIEW

Al crear un servicio web utilizando LabVIEW y alojar el servidor web en una PC usando el servidor web de NI, es posible que las PC cliente conectadas a la misma red (como a través de Internet) utilicen métodos HTTP para ejecutar en la PC servidor el contenido indicado por la PC cliente.
Si desea mejorar la velocidad de procesamiento llamando en paralelo a un programa que realiza cierto procesamiento dentro de un servicio web, es necesario realizar llamadas asíncronas a subVI dentro del servicio web.
 
Aquí se revisan los métodos de programación necesarios para la ejecución en paralelo en servicios web. Como ejemplo, se introduce un método de programación para procesar en paralelo múltiples solicitudes HTTP cuando se envían varias solicitudes HTTP simultáneamente a múltiples Web VI alojados por un servicio web. Asimismo, si desea invocar simultáneamente el mismo Web VI de un mismo servicio web mediante múltiples solicitudes HTTP, consulte este documento.



Puede consultar los conceptos básicos sobre cómo crear servicios web y aplicaciones web en este documento.

Aquí, dentro del servicio web, se llama a un subVI como se muestra a continuación. Este subVI realiza un procesamiento simple de arreglos, espera durante un tiempo especificado y genera como salida el tiempo de inicio y el tiempo de finalización de la ejecución del VI.
Paralelo.png

 

Cuando una solicitud POST (Parallel.vi) que incluye este subVI se invoca múltiples veces en paralelo desde una PC cliente, la ejecución no se procesa simultáneamente, sino de forma secuencial. Si es necesario llamar y ejecutar el contenido de la solicitud POST de Parallel.vi múltiples veces al mismo tiempo, cree múltiples solicitudes POST con el mismo contenido. En este caso, el subVI utilizado en cada solicitud POST puede ser el mismo.
 
Como se muestra arriba, se crean tres solicitudes POST: Parallel.vi, Parallel2.vi y Parallel3.vi, y al ejecutarlas simultáneamente como se indica a continuación, se puede confirmar que funcionan como se espera.EjecuciónParalela.png

Rojo, verde y azul corresponden a las solicitudes POST a Parallel.vi, Parallel2.vi y Parallel3.vi, respectivamente, con tiempos de espera de 2 segundos, 3 segundos y 4 segundos especificados. El tiempo de inicio de estos procesos es aproximadamente el mismo (21:02:50), y el tiempo de finalización ocurre después de que transcurre el tiempo de espera especificado para cada uno.
 
Por otro lado, al llamar un subVI múltiples veces dentro de cada solicitud POST o al mejorar la velocidad de procesamiento utilizando un bucle For en modo de ejecución en paralelo, es necesario llamar al subVI dentro de la solicitud POST como se muestra a continuación y, dentro de ese subVI, realizar una llamada asíncrona al VI.
llamadaasincrónica.png

 

Al crear un servicio web, si es necesario realizar llamadas asíncronas a VI o ejecución en paralelo, se requiere programación como la anterior dependiendo del propósito.