Async Rendering

Last modified by Lucas Charpentier on 2026/09/28 15:44

Explanation

Async rendering lets XWiki serve a page without waiting for its slow parts, and reuse the result of an expensive rendering instead of computing it again. A part rendered asynchronously is replaced by a placeholder, which is filled in once the result is ready. A cached result is kept in memory and invalidated automatically when one of the resources it used, such as a document or a component, is modified.

Without async rendering, the reader waits for the slowest part of the page:

With async rendering:

Async rendering is supported for:

To render a part of wiki content asynchronously or to cache it, wrap it in the "async" Macro. The context entries an asynchronous execution can keep, the async script service and the details of cache invalidation are described on the Async Rendering extension page.

FAQ

How do I bypass the cache for one display?

Force the refresh in the browser, usually with Ctrl+Shift+R. The browser then sends a Cache-Control: no-cache header, which also makes XWiki skip its async rendering cache.

Is async rendering always enabled?

No, XWiki disables it where a placeholder cannot be filled in later, for example during an HTML export. The content is then rendered synchronously.

More

To find more about the current topic, you can search or use the table below and filter the columns to narrow your choices.

Get Connected