-
Epic
-
Resolution: Unresolved
-
Critical
-
None
-
None
Epic Goal
Establish performance goals for the console and determine whether these goals can be met by:
- incremental improvements to the current data model
- pruning unneeded data
- moving to a bidirectional connection (like WebSockets/socket.io) that we can use to fetch subsets of resources depending on the actual page used
- OR, creating a new data model
- aggregation is moved to the console backend
- new APIs are created to retrieve summary information like counts/totals
- new streamable/paginated APIs are created to allow incremental loading in the UI (items that depend on many resources are compiled in the backend)
Why is this important?
The current data model requires all relevant data to be loaded into the users browser before anything can be displayed. This makes it easy for developers to work on the assumption they have all the relevant data, so that there is less management of loading required and summary information can be calculated easily. But with scenarios having 3500 clusters on a hub, for example, loading time can be up to a minute. After loading, subsequent navigation is reasonable, but there is a heavy load on the browser for processing and rendering all the data.
Scenarios
...
Acceptance Criteria
...
Dependencies (internal and external)
- ...
Previous Work (Optional):
- ...
Open questions:
- …
Done Checklist
- CI - CI is running, tests are automated and merged.
- Release Enablement <link to Feature Enablement Presentation>
- DEV - Upstream code and tests merged: <link to meaningful PR or GitHub
Issue> - DEV - Upstream documentation merged: <link to meaningful PR or GitHub
Issue> - DEV - Downstream build attached to advisory: <link to errata>
- QE - Test plans in Polarion: <link or reference to Polarion>
- QE - Automated tests merged: <link or reference to automated tests>
- DOC - Downstream documentation merged: <link to meaningful PR>
- is related to
-
ACM-3013 Web UI consumes excessive memory and CPU
- Closed