Один большой HTTP-запрос против нескольких меньших запросов - PullRequest
0 голосов
/ 12 февраля 2020

Я пытаюсь получить много записей из таблицы базы данных через API. Допустим, есть 1 миллион записей. У меня есть два варианта выполнения этого вызова:

ОПЦИЯ 1 : выборка всех в одном сетевом вызове

https://api.com/data?limit=1000000

ОПЦИЯ 2 : выборка в приращения по нескольким сетевым вызовам

В приведенном ниже примере используется Python для выборки записей с шагом 10 000 элементов (через 100 сетевых вызовов).

results = []
next_url = https://api.com/data?limit=10000
while True:
    response = requests.get(next_url).json()
    partial_results = response["results"]
    results += partial_results
    next_url = response["next"]
    if not next_url:
        break

С точки зрения производительности, один вариант считается «лучшей практикой», чем другие, или это зависит от ситуации (т. е. производительности сети, как обрабатываются данные на клиенте и т. д. c.)? Мне не хватает лучшего варианта?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...