Я пытаюсь получить все продукты, но у меня истекло время ожидания запроса при попытке получить 60 тыс. Продуктов для приложения управления запасами.
Я использую nodejs для циклического просмотра 200 страниц, каждая страница ограничена 250 продуктами,Я ограничил 2 запроса каждые 10 секунд для моих вызовов (5 секунд / 1 запрос)
иногда я получал эти ошибки на нескольких страницах.Иногда нет
читать ECONNRESET
Время ожидания истекло
зависание сокета
Может кто-нибудь сказать, пожалуйста, в чем проблема?Буду признателен за вашу помощь.
for (var i = 1; i<= totalPage;i++)
{
var promise = shopify.product.list({limit:limit,page:i,fields:fields})
.then(products =>{
// do some thing here when got products list
// loop through each product then save to DB
// ShopifyModel.updateOne(.....)
}).catch(error=>{
// some time it fired error here
})
}
Я также пытался переписать функцию для получения продуктов на 1 странице:
const request = require('request-promise');
var getProductOnePage = function (Url_Page,headers,cb){
request.get(productUrl, { headers: headers,gzip:true })
.then((ListProducts) => {
console.log(" Got products list of one page");
cb(ListProducts);
})
.catch(err=>{
// Got All Error Here when try to put into for loop or map or forEach with promise.all
console.log("Error Cant get product of 1 page: ",err.message);
});
}
РЕДАКТИРОВАТЬ: Я нашел некоторые проблемы, похожие на мой случай здесь: https://github.com/request/request/issues/2047 https://github.com/twilio/twilio-node/issues/312