@hawari.rahman17 The advantage is that the handler doesn’t need to block a thread if it’s waiting for data. Asynchronous handlers are more efficient in terms of thread usage, at the cost of being more complicated to work with.
All middleware in the chain needs to be async for the final handler to be async.