В моей компании именно такая ситуация, и мы выбрали гибрид.Наши данные являются табличными, поэтому мы отправляем их через AJAX на datatables . Это обеспечивает хорошее форматирование, сортировку, фильтрацию и отображение / скрытие столбцов пользовательского интерфейса.У Datatables есть отличное решение, которое будет «ставить в очередь вперед», называемое «конвейерной передачей», которое будет захватывать некоторое количество данных перед действием пользователя (в нашем случае, до 5 раз записей, которые они запрашивают), а затем пролистывать без запросов, пока не закончитсяданных.Это ОЧЕНЬ легко реализовать с помощью Datatables, но я подозреваю, что подобное решение не будет сложным, если вам придется писать его вручную, используя функциональность JJuery AJAX.
Я попытался выполнить полную загрузку и кешировать на 1,5 миллиона записей.базы данных, и это было крушение поезда.Клиент чуть не бросил меня, потому что разозлился, это было так медленно.После продолжительного совершенства AJAX клиент снова был счастлив.Но лучше никогда не доходить до этой точки.
Удачи.