Мой бэкэнд, Nodejs, должен выполнить несколько запросов API GET к внешним службам для извлечения данных и использования в качестве веб-страницы. Эти вызовы API кэшируются.
Поскольку я использую Heroku, эти данные удаляются каждый раз, когда приложения переходят в режим гибернации. Есть ли какая-нибудь библиотека кешей, которая сохраняется? В настоящее время я использую lru-cache
и axios-extensions
.
const axios = require('axios');
const { cacheAdapterEnhancer } = require('axios-extensions');
const LRUCache = require("lru-cache")
const options = {
defaultCache: new LRUCache({ maxAge: 60 * 60 * 1000, max: 100 })
}
const http = axios.create({
headers: { 'Cache-Control': 'no-cache' },
timeout: 60000,
adapter: cacheAdapterEnhancer(axios.defaults.adapter)
}
)
getData: async () => {
try {
const response = await http.get(url, config)
const data = response.data
return data
} catch (error) {
console.log(error)
}
}