Ticket #17 (closed defect: fixed)

Opened 6 years ago

Last modified 6 years ago

Instructor dashboard too slow with lots of data

Reported by: ddickison Owned by: ddickison
Priority: major Milestone: TestHarness
Component: GameController Keywords:
Cc:

Description

The instructor dashboard takes a very long time to load (on Safari and Chrome, anyways), when there are many students and/or game results. The data seems to be transferred quickly, so it appears to be the JS processing of the fetched data into the jquery.data.tables data structures that takes a long time.

A couple ways I can think of to handle this:

  • Implement paging, so the server only returns 20 or so students per page, and the user has to click next/prev links to see more.
    • This is probably annoying for the user.
    • Also tricky to implement if we want to preserve the ability to sort by columns etc.
  • Show all students, but dynamically fetch game results only for click-selected students.
    • I think this is the way to go.
    • For admins, we should add an instructor selector and dynamically fetch students only for that instructor.

Change History

comment:1 Changed 6 years ago by ddickison

  • Status changed from new to closed
  • Resolution set to fixed

Turns out there's a data grid library called  SlickGrid that solves this problem -- it's wicked fast because it doesn't render the DOM for rows that are not currently visible, dynamically creating the DOM elements as the user scrolls. With this, showing all the data at once is almost instantaneous.

I pushed this out to the server.

Note: See TracTickets for help on using tickets.