Função Google Cloud termina a execução, mas nunca insere retornos de chamada

Estou tentando fazer ~ 25 solicitações para buscar alguns dados e salvar a resposta em arquivos separados. Estou usando o módulo de solicitação npm para fazer as solicitações com uma função básica da nuvem do Google. Cada solicitação pode levar de 0,5 a 5 segundos para retornar uma resposta. Quando o script é configurado para fazer menos de 10 solicitações, tudo funciona como esperado e salva tudo nos arquivos apropriados. No entanto, mais do que isso, não recebo resposta de nenhuma solicitação.

for (i = 0; i < popIDS.length; i++) {
    for (j = 0; j < genreIDs.length; j++) {
        fetchAndSaveToFile(popIDS[i], genreIDs[j], date);            
    }
}  

fetchAndSaveToFile faz a solicitação npm e usa pako para salvar a resposta compactada em um arquivo no Google Cloud Storage. Originalmente, isso era um problema ao fazer ~ 5 solicitações, mas aumentei o tempo limite da função e ela começou a funcionar, no entanto, o tempo limite da função foi estendido para 9 minutos. Todas as funções estão atualmente em um arquivo.

Também é importante notar que o valor de popIDS [i], genreIDs [j] não é usado dentro do retorno de chamada e 'i' e 'j' não precisam ser capturados.

Preciso fazer solicitações assíncronas de forma diferente para que isso funcione? Vejo que existe um módulo de solicitação assíncrona que lida com esse tipo de coisa. Existem configurações de função que eu preciso definir? Ou preciso dividir isso em arquivos separados para que eu possa definir um tempo limite de 9 minutos para cada solicitação?

questionAnswers(1)

yourAnswerToTheQuestion