Typically page generation process is split into several steps:
- run preprocessors (see Preprocessors)
- execute handler code: parse request parameters and make some requests to backends (see Making HTTP requests)
- wait for responses (or timeouts) from each backend, run callbacks and possibly make some more requests
- aggregate all responses and construct result in one of supported ways (see Producers)
- run postprocessors and templating (see Postprocessing)