В проекте, над которым я работаю, я пытаюсь проанализировать 500 блоков текста с помощью анализатора тонов Ватсона. Проблема в том, что когда я запускаю параллельные 500 http-звонков, время обслуживания отключается. Ниже приведен код, который дает мне вопросы:Как продлить таймаут при использовании анализатора тонов Ватсона
function analyzeManyPosts(posts){
var qPromise = q.defer();
const count = posts.length;
var promList = posts.map(function(post){
// analyzeSinglePost is another function I wrote that returns a promise
// that works as intended
return analyzeSinglePost(post);
});
//Return a collection of all promises
return q.all(promList);
}
Когда я вызываю выше функции я получаю ошибку таймаута, который считывает Error: connect ETIMEDOUT
Мои два варианта являются либо
- увеличить время ожидания , или
- убедитесь, что я запускаю вызов n после вызова n-1.
Я ищу способ сделать первый вариант, прежде чем по умолчанию выполнить второй.
Спасибо!
Если вы используете bluebird, у него есть функция «map» с параллелизмом, где вы можете сказать, что она запускает только 8 вызовов одновременно. –