Datatable client side sorting / filtering

UI Components for JSF
Post Reply
stealman
Posts: 4
Joined: 29 Jan 2014, 01:11

29 Aug 2023, 10:25

Hello, is it possible to do sorting / filtering of DataTable on the client side ?

In our company we are discussing various stacks for building our new application and we have created several POCs to test. I have created Faces 4.0 + Primefaces stack but during load testing, the performance was sadly disasterous. The main component of application is DataTable (that has like 5000 - 10000 records) that is frequently filtered and sorted and evidently it is done server-side which generates enormous burden to the server CPU. Each client working as is expected produces like 2% of CPU usage, when we run 50 concurent simulations, it overwhelmed CPU completely.

There is no problem with anything else - selecting rows, editing rows, whatever else is pretty much quick (not as quick as JS clients, but very very acceptable quick), but when it comes to sort / filter through that 10000 records, it is game over - and honestly I have no argument to justify doing such operation server-side and thats why I am asking here on this forum, whether or not is there some way to do sorting / filtering on the client side ?

Everything else is pretty nice and smooth, but adding another server instance for each 50 users is sadly no-go :( I am aware of some workarounds as using JQuery Datatable for this component but this feel uncomfortable.

Thanx very much in advance !

tandraschko
PrimeFaces Core Developer
Posts: 3979
Joined: 03 Dec 2010, 14:11
Location: Bavaria, DE
Contact:

29 Aug 2023, 11:30

short: no there isn't and it would be a big refactoring to allow this

TBH i dont think u need a server for 50 users; there is something else wrong.
Do you really render 10000 items at once? why you dont use lazy pageable datamodel? LazyDataModel performs well. Works much better and none needs 10k items on a view...
Thomas Andraschko

PrimeFaces | PrimeFaces Extensions

Apache Member | OpenWebBeans, DeltaSpike, MyFaces, BVal, TomEE

Sponsor me: https://github.com/sponsors/tandraschko
Blog: http://tandraschko.blogspot.de/
Twitter: https://twitter.com/TAndraschko

tandraschko
PrimeFaces Core Developer
Posts: 3979
Joined: 03 Dec 2010, 14:11
Location: Bavaria, DE
Contact:

30 Aug 2023, 17:55

you may also try this datamodel: https://github.com/primefaces/primefaces/issues/8395

it moves the sorting+filtering to the model (just comparing objects), instead of caring about all JSF state, restoring row states and so on
Thomas Andraschko

PrimeFaces | PrimeFaces Extensions

Apache Member | OpenWebBeans, DeltaSpike, MyFaces, BVal, TomEE

Sponsor me: https://github.com/sponsors/tandraschko
Blog: http://tandraschko.blogspot.de/
Twitter: https://twitter.com/TAndraschko

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: Google [Bot] and 67 guests