Ученый по вычислительной технике, где я работаю, написал программу, которая оценивает входные данные, используя модель машинного обучения, построенную с помощью scikit-learn. Моя задача - сделать этот счетчик ML доступным в качестве микросервиса.
Поэтому я написал несколько строк кода, используя Flask, чтобы выполнить 1015 *. Миссия выполнена!
Ну, не совсем. Поскольку порой этот сервис будет работать довольно интенсивно, он должен иметь возможность обрабатывать несколько запросов параллельно. (То есть на нескольких ядрах. У нас около 20 на нашем сервере.) Решение, которого я могу достичь, потратив около десяти минут, состоит в том, чтобы просто развернуть десять или двадцать этих маленьких REST-серверов на разных портах и выполнить циклический перебор на них. используя nginx в качестве обратного прокси.
Хотя это будет работать нормально, я уверен, что было бы более элегантно иметь один Python сервер, обрабатывающий все запросы, а не двадцать Python серверов. Поэтому я начал читать о WSGI, uWSGI и многом другом. Но все, что я сделал со всем этим чтением и веб-серфингом, в конечном итоге очень запутано.
Поэтому я попрошу здесь вместо того, чтобы пытаться разгадать это самостоятельно: я должен просто придерживаться подхода грубой силы Я описал выше? Или есть что-то лучшее, чем я мог бы заниматься?
Но если для того, чтобы сделать что-то «лучше», потребуются дни усилий, чтобы пройтись по непонятной документации, провести разочаровывающие эксперименты и вырвать все мои волосы, тогда я Я предпочел бы просто придерживаться подхода тупой грубой силы, который я уже понимаю и который точно знаю, сработает.
Спасибо.