Мне интересно, что лучше всего подходит для установки RESTful API для задач с интенсивным вычислением с использованием GCP. Например, если я хочу создать RESTful API для преобразования файла .png в файл .jpg на основе команды преобразования imagemagick (т. Е. convert file.png file.jpg
). Поскольку входной файл может быть очень большим, команда может занять до нескольких минут. Как мне это сделать с GCP?Облачная архитектура для вычислительно интенсивных задач
Недостаточно средств для работы с приложениями из-за ограниченной среды и ограничения времени выполнения. Вычислительный движок включает в себя настройку веб-сервера, балансировки нагрузки, очереди задач и т. Д., Которая, кажется, излишняя для простого API.
Решение, которое я имею в виду, это просто обернуть команду convert
внутри рамки WSGI и развернуть ее в гибкой среде движка приложения. Конечно, когда вызывается команда convert
, она будет использовать множество процессоров и памяти, что замедлит работу моего веб-сервера. Но когда это произойдет, гибкий движок приложения увеличит количество экземпляров для обработки новых запросов. Однако у меня такое чувство, что это не лучшее решение. Я хотел бы знать, каков ваш подход к этой проблеме.
Большое спасибо!
Спасибо за предложение. Таким образом, в заключение, мой внешний интерфейс будет нормальным движком приложения, который принимает запросы пользователей и генерирует задание для размещения очереди задач. Очередь задач подталкивает задание к вычислительному узлу (т. Е. Управляется движком контейнера). Узел вычисления должен реализовать REST api, поэтому очередь задач может связываться с ним. Когда он получил задание, он вызывает соответствующий код для выполнения. – James
Да. Ты прав. – jw10