Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Render build groups one at a time on index page #1588

Merged

Conversation

williamjallen
Copy link
Collaborator

The index page is currently unacceptably slow for large projects due to a large rendering delay. On large dashboards such as the VTK dashboard, AngularJS takes in excess of 5 seconds to render once it receives a response from the API.

The render delay itself is an unavoidable limitation of AngularJS, but it's possible to hide some of it by prioritizing content at the top of the page. By rendering one build group at a time, we can put content in front of the user's eyes faster than if it was all rendered at once.

Although the total render time is still roughly the same, this PR drops the time before a user sees the first build group from 5 seconds to 1.5 seconds on the VTK dashboard. Since the user is unlikely to begin navigating the page before the other build groups render, the page appears to take 1.5 seconds to load.

In the future, the same approach could be applied to build rows within build groups. We could render the first hundred rows initially and then load the rest later.

@williamjallen williamjallen added this pull request to the merge queue Aug 1, 2023
Merged via the queue into Kitware:master with commit 1e34fb6 Aug 1, 2023
@williamjallen williamjallen deleted the index-render-performance branch August 1, 2023 18:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants