calaldees / KaraKara

Karaoke Event System - Attendees can view and queue tracks from their mobile phones
https://karakara.uk
GNU General Public License v3.0
28 stars 9 forks source link

Thinking about performance #124

Open shish opened 1 year ago

shish commented 1 year ago

It'd be nice if our automated tests could spot something taking an unreasonable amount of time (ie, we should try to catch code which runs fine in dev with 10 tracks but takes O(n^2) time with 10,000 tracks in prod)

I think most of the code is O(1) - the things which can grow are:

If we generate some synthetic data sets which push the limits of our scale, what would we want to test with them?

Maybe also worth aiming for some specific number even for the O(1) parts, like "no request should take longer than 50ms"?

shish commented 1 year ago

At hotarucon 2022 we used one queue for the whole weekend, 12 hours of playtime in total - it got up to 307 tracks, 55KB of queue.json