Confluence Cloud platform blocks page rendering until all synchronous calls complete

Description

Users that try to render pages with many multi-excerpt-include macros experience slow performance.

We are checking with Atlassian on whether this is a platform limitation. I just posted this to the news group:

https://groups.google.com/forum/#!topic/atlassian-connect-dev/xSD8PJ4DDYw

Hi!

Summary: many 'static content macro' calls require many api calls which cause page rendering performance degradation - is there a better way?

We have several customers that uses one of our macros (multi-excerpt) many dozens of times on some Confluence pages.

When there are this many macros the page's rendering experiences performance degradation because it is waiting on all the API calls generated to our cloud service Heroku. The add-on also needs to pull data from the Confluence server.

We are aware of the browser side cache'ing which doesn't help much in this situation.

Our Confluence Server version of this macro easily solves the problem using server side cache'ing. Browser side cache'ing will not cut it.

Is there any solution to this situation for Confluence Cloud or even JIRA Cloud? The ability render that 'chunk' asynchronously would largely alleviate the problem using something like BigPipe. I believe that was in the original Connect implementation or at least spec but got pulled?

Is there a way to render many many "static content macros" on a Confluence page quickly without blocking the page render and/or making API calls for each? I hope there is!? Or should I communicate to my customers this is simply a limitation of the of Confluence Cloud platform for add-ons?

Thanks for any insights!!!

Brendan

Freshdesk Tickets

#38839 (http://artemissoftware.freshdesk.com/helpdesk/tickets/38839) - MultiExcerpt is making so may API calls

Create a Support Ticket

Activity

Show:
Brendan Patterson
April 1, 2019, 10:37 PM

Fast Include

Summary

  • New macros to increase performance

Details

  • Major performance enhancements for pages with many MultiExcerpt Includes.

There are two new types of includes:

  • Multiexcerpt Fast Include (Block)

  • Multiexcerpt Fast Include (Inline)

These new macros allow the page to load without waiting/blocking until the content from the multi excerpt has been retrieved. Rather the page loads quickly and they are loaded in the background. The (Block) version will expand to width of the page. The (Inline) version allows placing of content inline, but is limited to 300pixels (an Atlassian limitations). These macros address the most requested feature for the MultiExcerpt Cloud App.

Brendan Patterson
April 1, 2019, 10:34 PM

Summary

  • New macros to increase performance

Details

  • Major performance enhancements for pages with many MultiExcerpt Includes.

There are two new types of includes:

  • Multiexcerpt Fast Include (Block)

  • Multiexcerpt Fast Include (Inline)

These new macros allow the page to load without waiting/blocking until the content from the multi excerpt has been retrieved. Rather the page loads quickly and they are loaded in the background. The (Block) version will expand to width of the page. The (Inline) version allows placing of content inline, but is limited to 300pixels (an Atlassian limitations). These macros address the most requested feature for the MultiExcerpt Cloud App.

Brendan Patterson
August 18, 2016, 1:51 PM

Atlassian's response to providing developers with a way to cache content and solve these kinds of issues from the forum discusssion:
"Unfortunately there are no plans to support any kind of server-side cache'ing in Cloud."

Fixed

Assignee

Unassigned

Reporter

Brendan Patterson