status-im / status-desktop

Status Desktop client made in Nim & QML
https://status.app
Mozilla Public License 2.0
299 stars 79 forks source link

Support user lists with +10k users #11059

Open iurimatias opened 1 year ago

iurimatias commented 1 year ago

Description

Currently the community member lists don't scale to thousands of users without a huge memory and CPU hit. They need to be modified or re-implemented so the user list is streamed from the backend instead so an arbitrary number of users is supported. The minimum supported must be at least 10,000 users per community.

caybro commented 1 year ago

Imho this is just a matter of adjusting the membel/users QAIM to use the canFetchMore/fetchMore paradigm, and then finetune the QML delegate. A QML ListView can definitely handle that

caybro commented 1 year ago

@John-44 sth to discuss tomorrow during the Weekly perf call?

John-44 commented 1 year ago

@John-44 sth to discuss tomorrow during the Weekly perf call?

Can do, but this is something we aren't going to work on until 0.16 at the earliest

iurimatias commented 1 year ago

note: this task is actually extremely important and should be done for 0.14, those user lists have to be able to scale and right now they don't. When the app goes live, if this task is not done, it could be quickly become an emergency issue if the communities with 1k members start to appear due to memory consumption etc.. better to do it now and have it ready.

We'll evaluate on the last cycle of the 0.14 milestone whenever to do this or move it to 0.15

caybro commented 1 year ago

We'll have plenty of work to do for 0.14 in the UI team -> this better be done by someone from the Messenger team. Happy to help with any UI issues

CC @iurimatias @jrainville

iurimatias commented 1 year ago

to be transformed into an epic