OregonDigital / ControlledVocabularyManager

Rails application with Blazegraph for managing controlled vocabularies in RDF.
http://opaquenamespace.org
GNU General Public License v3.0
21 stars 4 forks source link

Look into performance issues, especially around large vocabulary pages #496

Open wickr opened 6 years ago

wickr commented 6 years ago

Look again at why exactly large pages are taking so long to render. One example had the /ns/creator main page taking 24 seconds.

Local profiling could help pinpoint problems. Check out https://github.com/MiniProfiler/rack-mini-profiler gem

straleyb commented 5 years ago

We could do one of two things:

1) Use Pagination or Sidekiq (with possible a separate worker allocation on the server) to process rebuilding the cache after a review occurs.

The main fix would be to rebuild the cache on review. This way, you dont have to rebuild the cache when you go to the vocabulary page. Instead, it would do it automagically.

If we did pagination, we need to support both a page with ALL the terms as well as the paginated list of terms. This wouldnt require the use of workers but would require a bit of an overhaul for the vocabulary show page with how it lists out terms, and switching between the two.

Pagination can be done with Kaminari https://github.com/kaminari/kaminari or with jquery datatables.