Задачи с интенсивным использованием ЦП Falcon API - PullRequest
0 голосов
/ 05 августа 2020

Я пытаюсь создать REST API, используя Falcon . У меня будет конечная точка post, где я получу json (иногда с сотнями ключей), и я попытаюсь обработать эти данные:

  • очистить текстовые данные
  • преобразование из str в int или аналогичные операции
  • 3 вызова других API
  • вставка в mysql и эластичность c

Нагрузка меньше 50 запросов в секунду, но у меня есть запросы, обработка которых может занять несколько минут из-за количества ключей и вызовов других API (один запрос может запускать 100 x 3 вызовов API и такое же количество вставок в базу данных / elasti c)

Учитывая эти обстоятельства, Falcon не может выполнить большинство моих запросов. Я использую Gunicorn для обслуживания приложения, также пробовал обслуживать его с помощью serve.forever. Я пробовал использовать gevent, но безуспешно.

Я должен упомянуть, что эта служба работает в docker.

Есть ли какие-либо настройки масштабирования в Falcon, которых мне не хватает, или это ошибка дизайна с моей стороны?

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