Kennisbank
1.000 veelgestelde vragen, 500 tutorials en uitlegvideo's. Hier vind je alleen maar oplossingen!
Callback- en SOAP-verzoeken begrijpen
Deze handleiding beschrijft enkele bewerkingen die op de achtergrond worden uitgevoerd door de VOD / AOD-service van Infomaniak.
Werking van SOAP-verzoeken en callbacks
In de VOD- (video on demand) en AOD- (audio on demand) diensten worden bepaalde bewerkingen, zoals het downloaden van bestanden, uitgevoerd via SOAP-verzoeken. SOAP is een protocol waarmee twee systemen met elkaar kunnen communiceren, en wordt vaak gebruikt voor het uitwisselen van gegevens tussen servers.
Wanneer een bestand via SOAP wordt aangevraagd, kan er een vertraging optreden voordat de server reageert. Deze vertraging is afhankelijk van verschillende factoren, zoals de grootte van het bestand, de belasting van de server of de kwaliteit van de verbinding. Het downloaden begint zo snel mogelijk, maar houd er rekening mee dat er een wachtrij is: als meerdere gebruikers tegelijkertijd een verzoek indienen, worden deze in volgorde verwerkt, en elke gebruiker heeft een limiet voor het aantal gelijktijdige downloads.
Callback: een melding na het downloaden
Een callback is een systeem waarmee de gebruiker (bijvoorbeeld uw applicatie) een melding ontvangt zodra het downloaden is voltooid. Met andere woorden, in plaats van te wachten en het downloadproces te controleren, "belt" het systeem u of stuurt het een reactie zodra alles klaar is. Dit is handig om te voorkomen dat uw applicatie wordt geblokkeerd terwijl het bestand wordt gedownload.
Er is echter ook een maximale wachttijd, ook wel timeout genoemd. Als deze wachttijd verstrijkt voordat het downloaden is voltooid, wordt er alsnog een antwoord verzonden. Dit betekent niet dat het downloaden is mislukt, maar wel dat het antwoord is gegeven voordat het downloaden was afgerond. In dat geval wordt het proces op de achtergrond voortgezet.
Grote bestanden hebben meer tijd nodig
Wanneer het gevraagde bestand groot is (bijvoorbeeld enkele honderden megabytes of zelfs enkele gigabytes), kan het downloaden enkele minuten duren. Deze tijd is sterk afhankelijk van de externe server: sommige zijn erg snel, andere minder. Het systeem probeert dit zo goed mogelijk te beheren, maar houd er rekening mee dat de reactietijd niet altijd direct zal zijn.
Blokkerende en niet-blokkerende aanroepen
Standaard wachten sommige SOAP-clients tot de server klaar is met het beantwoorden voordat ze verdergaan. Dit wordt een blokkerende aanroep genoemd: uw applicatie wordt gepauzeerd totdat het antwoord binnenkomt. Dit kan een probleem vormen als het antwoord lang duurt.
Gelukkig is het vaak mogelijk om de SOAP-client zo te configureren dat deze niet blokkeert. Dit wordt een niet-blokkerende aanroep genoemd. Hierdoor kunt u meerdere verzoeken achter elkaar verzenden zonder te hoeven wachten op het antwoord van elke aanroep. Dit is sneller en efficiënter, vooral wanneer u meerdere bestanden achter elkaar verwerkt.
Link naar deze veelgestelde vragen: https://faq.infomaniak.com/1626
Is deze veelgestelde vragenlijst nuttig geweest?