Bug #5452
closed
Performance issue for node list
Added by Lionel Le Folgoc about 10 years ago.
Updated over 9 years ago.
Category:
Performance and scalability
Description
When a user try to display the list of nodes ("Node Management" > "List nodes"), the page takes a lot of time (tens of seconds) to display when there is a lot of nodes (1000 for example).
It may be due to the fact that the full list of nodes is fetched instead of only the visible page.
There is the same performance problem for "Node Management" > "Accept new nodes": the whole history is fetched, which slows down the loading (see #6078)
- Project changed from 24 to Rudder
- Category set to Performance and scalability
- Status changed from New to 8
- Assignee set to François ARMAND
- Priority changed from N/A to 1 (highest)
- Target version set to 2.11.3
Giving to fanf for evaluation :)
- Target version changed from 2.11.3 to 2.11.4
- Target version changed from 2.11.4 to 2.11.5
- Target version changed from 2.11.5 to 2.11.6
For information, with #6059 the "list of nodes" page takes less than 1.5s to display with 1000 nodes, on a vm with 2Go of ram for the whole Rudder installation.
- Target version changed from 2.11.6 to 3.0.0
Targetting it in 3.0 because it implies a lot of changement in code, some architecture related - too much for a bug.
- Subject changed from Performance issue for node list (all nodes loaded) to Performance issue for node list
- Description updated (diff)
Rewrote description and split the "accepected node" part in an other ticket.
- Description updated (diff)
On that one, we really want to have all the node on the client side because without that, the "filter" and "sorting" features of the grid don't work as expected by the user (they only filter/sort the visible part).
On the other hand, displaying 1000 lines in a table should be very quick (it's a couple of 100ko, without compression which should be quite good on these data). So the backend should be able to just send these data in less than 2s (from user point of view).
To be more precise: this performance concern will need several steps. The first one is to have good performance with the current client-side components (i.e, even with a lot of node, being able to display the page is a couple of second).
A second step will implement a change in the used components so that we can load only displayed items and still have filter/sorting working as expected (see #6081)
- Status changed from 8 to Pending technical review
- Pull Request set to https://github.com/Normation/rudder/pull/768
With the proposed patch, the time to display the page "list nodes" with 1900 nodes is ~80ms
- Assignee changed from François ARMAND to Vincent MEMBRÉ
Shall we let Vincent look at some nice LDAP query optimization (and he made some clever remark on the last cache-related implementation I did)
- Status changed from Pending technical review to Pending release
- % Done changed from 0 to 100
- Status changed from Pending release to Released
This bug has been fixed in Rudder 3.0.0, which was released on 2015/02/16
Also available in: Atom
PDF