Масштабируемый разбор изображений в nodejs - PullRequest
0 голосов
/ 18 апреля 2019

Я устанавливаю новый сервис, в котором мне нужно разобраться с анализом изображения. Код для разбора изображения представляет собой простую функцию js, которая выполняет некоторые манипуляции с каждым пикселем и занимает несколько (например, 10-15) секунд для больших изображений. Моей первоначальной мыслью было установить его в nodejs, так как я знаю это, а функция синтаксического анализа находится в javascript. Но так как он однопоточный, я не понимаю, как сделать его масштабируемым для обработки тысяч запросов одновременно. Я понимаю, как обрабатывается ввод / вывод в узле, и есть способы сделать асинхронные задачи, интенсивно использующие процессор, как те, которые предлагаются в этом блоге. https://medium.com/@badewakayode/running-cpu-intensive-task-in-nodejs-db4f995db310

Но действительно ли nodejs полезен в подобных случаях. Или я должен переключиться на некоторые другие опции, такие как go-lang, java, c ++.

1 Ответ

0 голосов
/ 18 апреля 2019

Мое мнение таково, что вы должны масштабировать это по горизонтали, используя AWS Lambda или какое-либо другое решение без сервера.Вы можете настроить функцию node.js, которая будет запускаться при загрузке изображения в корзину S3 и автоматически обрабатывать его.Лямбда также увеличит количество экземпляров, чтобы справиться с интенсивным использованием

Вот пара статей в этом духе:

https://read.acloud.guru/serverless-image-optimization-and-delivery-510b6c311fe5 https://aws.amazon.com/blogs/compute/resize-images-on-the-fly-with-amazon-s3-aws-lambda-and-amazon-api-gateway/

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