authgear-server icon indicating copy to clipboard operation
authgear-server copied to clipboard

Non-blocking webhooks should not wait for any response from the endpoint

Open fungc-io opened this issue 1 year ago • 0 comments

Problem

By nature non-blocking webhooks are NON-blocking. That is, the response from the webhook endpoint should not affect the process. In our current implementation, the process will wait for a response before proceeding, although the response content does not matter. If the non-blocking webhook endpoint timeout, the process will hang for a very long time.

Step to reproduce

  • Put in a endpoint in non-blocking event that with 30s delay in response
  • Execute a user profile mutation in GraphQL
  • Sees the GraphQL request takes more than 30s to finish
  • Remove the non-blocking event endpoint. Retest and see the request completed in much shorter time.

fungc-io avatar Jun 07 '23 09:06 fungc-io