Как правильно делать много запросов к сторонним API и обновлять/добавлять данные в БД. NodeJS

Как правильно делать много запросов к сторонним API и обновлять/добавлять данные в БД? Мой код ведет себя странно. Данные обновляет рандомно, плюс запускал по крону и ловлю это error: FATAL: sorry, too many clients already.(postgresql)

class WorkerService{

async startWorker() {

    const data = await Marketplace.findAll({raw:true})

    let fetches = data.map(url => fetch(url["urlAPI"],{
        method: 'POST',
        headers: {
            'Content-Type': 'application/json;charset=utf-8'
        },
        body: JSON.stringify(url["token"])
    }).then(res => res.json()));

    Promise.allSettled(fetches)
        .then((results) => {
            results.forEach((result, num) => {
                if (result.status === "fulfilled") {
                    if(result.value !== '{not data}'){
                        mapChange.set(data[num]["id"],result.value)
                    }
                }
                else if (result.status === "rejected") {
                    console.log(`Failed Calling: \n\treason: ${result.reason}`);
                }
            });

            updateMarketContent(mapChange)
            mapChange.clear()
        })
        .catch((err) => {
            console.log(err)
        });
}}

class UpdateService{async updateMarketContent(map){
   for (const [key,value] of map) {
       const rez = await MarketplaceContent.findOne({where:{marketplaceId:key}})
       if(rez){
           rez.data = JSON.stringify(value)
           const market = MarketplaceUpdate.create({type:'Updated',marketplaceId:key})
           return await rez.save()
       }else{
           const market = MarketplaceUpdate.create({type:'Add',marketplaceId:key})
           return await MarketplaceContent.create({data:JSON.stringify(value),marketplaceId:key})
       }
    }
}}

Ответы (0 шт):