1000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Comprender las callbacks y las solicitudes SOAP
Esta guía detalla ciertas operaciones realizadas en segundo plano por el servicio VOD / AOD Infomaniak.
Funcionamiento de las solicitudes SOAP y de los callbacks
En el servicio de VOD (vídeo bajo demanda) y AOD (audio bajo demanda), ciertas operaciones como la descarga de archivos se realizan a través de solicitudes SOAP, un protocolo que permite a dos sistemas comunicarse entre sí, a menudo utilizado para intercambiar datos entre servidores.
Cuando se solicita un archivo a través de SOAP, puede haber un retraso antes de que el servidor responda. Este retraso depende de varios factores, como el tamaño del archivo, la carga del servidor o la calidad de la conexión. La descarga comienza tan pronto como sea posible, pero hay que saber que hay una cola: si varios usuarios hacen solicitudes al mismo tiempo, cada una se procesa en orden, y cada usuario tiene un límite de descargas simultáneas.
Callback: una notificación al final de la descarga
Una retroalimentación es un sistema que permite notificar al cliente (por ejemplo, su aplicación) una vez que la descarga está terminada. En otras palabras, en lugar de esperar vigilando la descarga, el sistema le « llama » o le envía una respuesta cuando todo está listo. Esto es útil para evitar bloquear su aplicación mientras se descarga el archivo.
Sin embargo, también existe un tiempo máximo de espera, llamado tiempo de espera máximoSi este retraso se alcanza antes de que finalice la descarga, se envía una respuesta de todos modos. Esto no significa que la descarga haya fallado, sino que la respuesta se ha dado antes de que finalizara. En este caso, el procesamiento continúa en segundo plano.
Los archivos grandes tardan más tiempo
Cuando el archivo solicitado es voluminoso (por ejemplo, varios cientos de megabytes o incluso varios gigabytes), la descarga puede llevar varios minutos. Este tiempo depende mucho del servidor remoto: algunos son muy rápidos, otros menos. El sistema intenta gestionarlo lo mejor posible, pero hay que tener en cuenta que el tiempo de respuesta no siempre será inmediato.
Llamadas bloqueantes y no bloqueantes
Por defecto, algunos clientes SOAP esperan a que el servidor termine de responder antes de continuar. En este caso, se habla de una llamada bloqueante : su aplicación está bloqueada hasta que llegue la respuesta. Esto puede causar problemas si la respuesta tarda en llegar.
Afortunadamente, a menudo es posible configurar el cliente SOAP para que no bloquee. En ese caso, se habla de una llamada no bloqueanteEsto permite enviar varias solicitudes una tras otra sin tener que esperar la respuesta de cada llamada. Es más rápido y más eficiente, especialmente cuando trata varios archivos seguidos.