The UI performance slows down significantly after using the application for 20 minutes. This was noticed by a user typing in a login "administrator" which lagged by 2-3 seconds.
The problem is related to Angular's well documented memory leaks and performance issues.
Run $digest on blur (not keydown) ie debounce
Make sure all directives and controllers remove any watchers on $destroy
Remove $filters and cache the filtered data (somehow)
Use $watchCollection for requisition watcher (and target very grainularly)
Page doesn't slow down after continuous use
about (4) that is probably the cleaner pattern... and we can do optimizations on that filtering if it is still a problem.... but I'm unclear about how much work that really is, and what the end benefit will be...
I'd hold off on doing something expensive like that until we make good progress on the critical bugs...
Like – I updated this issue to a story, so we can track individual bits of work as subtasks
I think the biggest challenge here is going to be establishing a metric to keep this from happening again, and also making sure we really fix the damn problem (and this needs to be documented somewhere)
Actually, using @watchCollection caused the watcher to not work at all
Question: Have we found any good ways to QA/monitor this // aside from running the UI for 20 minutes?
I did not notice that after 20 minutes of use Performance UI slows down. So for me all works fine.