2010-01-26 91 views

Respuesta

14

Una API síncrona bloqueará a la persona que llama hasta que regrese. Una API asíncrona no bloqueará a la persona que llama y generalmente requerirá una devolución de llamada que se ejecutará una vez que se complete el trabajo.

Blocking

Callback

+0

¿Cuándo y por qué necesitamos una API asíncrona? Las funciones de devolución de llamada realmente molestan y no son convenientes para agregar un nuevo método. – Stallman

+2

@Stallman: si tienes un trabajo que tardará, digamos, 10 minutos, y no quieres que la aplicación se bloquee durante esos 10 minutos, generarás un hilo asíncrono. ¿Es eso lo que estás preguntando? –

+0

@MikeWilliamson Casi a la derecha. Gracias por la respuesta. – Stallman

3

Puede tener el mismo en Web APIs. Algunas API devolverán datos en el cuerpo del resultado de las llamadas y otros simplemente devolverán (por ejemplo) un 202 y luego harán algo en segundo plano (procesando datos, configurando una suscripción). Webhooks son una forma común de responder cuando el trabajo solicitado es "hecho".

En 3scale, utilizamos los modos síncrono y asíncrono con webhooks para evitar que las personas tengan que acoplarse demasiado a los sistemas.

Cuestiones relacionadas