Калитка: разбить огромный результат запроса - PullRequest
0 голосов
/ 27 июня 2018

Я получаю более 100 МБ результатов из API, который нужно разбить на страницы, потому что сортировка занимает более 10 минут. Все результаты Reglar JSON Objects

Как я могу разбить этот объем на данные с помощью калитки?

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

Wicket предлагает компоненты, работающие с IDataProvider, интерфейсом, поддерживающим подкачку данных.

Вам, вероятно, придется где-то кэшировать результат в 100 МБ, так как вы не хотите перезагружать данные на каждой подкачке. Однако не следует хранить его внутри компонента, иначе он будет сериализован вместе с содержащейся страницей.

0 голосов
/ 27 июня 2018

100МБ - это количество, которое лучше не хранить в памяти! Лучше хранить его (временно) в некоторой базе данных Document NoSQL (например, Couchbase, MongoDB или аналогичной). Затем используйте язык запросов к базе данных, чтобы читать по одной странице за раз.

...