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... |