Firstly, we're now explicitly instructing the comments service to not return thread responses/comments if the request isn't AJAX. So, if you load the URL for a single discussion thread in your browser, this would be a non-AJAX call and we'll avoid loading the responses for the entire thread behind-the-scenes. Big win here for large threads. Next, we removed a redundant "get threads" call which was also happening behind-the-scenes. This call was redundant as the front-end JS also grabs the thread list when a topic is chosen, so we were making an extranenous call for no benefit. Poof, gone! Finally, we added some caching of database queries that are required to drive a lot of the permissions/cohorts machinery around discussion. This will have a minimal effect but introduced a cleaner way to apply general memoization at the per-request level which will let us further cache things as we identify them as issues.
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| course_action_state | Loading commit data... | |
| course_modes | Loading commit data... | |
| django_comment_common | Loading commit data... | |
| edxmako | Loading commit data... | |
| embargo | Loading commit data... | |
| enrollment | Loading commit data... | |
| microsite_configuration | Loading commit data... | |
| pipeline_mako | Loading commit data... | |
| request_cache | Loading commit data... | |
| startup_configurations | Loading commit data... | |
| static_replace | Loading commit data... | |
| status | Loading commit data... | |
| student | Loading commit data... | |
| terrain | Loading commit data... | |
| third_party_auth | Loading commit data... | |
| track | Loading commit data... | |
| util | Loading commit data... | |
| xblock_django | Loading commit data... |