【问题标题】:How to cache data in next.js server on vercel?如何在vercel的next.js服务器中缓存数据?
【发布时间】:2021-01-03 20:23:34
【问题描述】:

我正在尝试构建一个从数据库获取数据的小型网站(目前我使用 Firebase 的 Cloud Firestore)。

我使用 next.js 构建了它,并考虑将它托管在 vercel 上。它看起来非常漂亮,并且运行良好。

但是,该站点需要处理大约 1000 个小文档 - 服务、搜索和很少更新。为了减少每次请求时对数据库的调用,这在时间和数据库定价方面都是昂贵的,我认为如果服务器能够在启动时(或在第一次请求时)获得完整的项目列表会更好,然后将它们保存在内存中,并通过数据请求从其内存中获取数据。

它在本地开发服务器上运行良好,但是当我将它部署到vercel 时,它就不起作用了。好像it forces me to work in serverless mode,每个请求都是独立的,我不能使用通用的内存缓存来获取数据。

我是否遗漏了什么,有一种方法可以在vercel 上使用next.js 实现类似的目标吗?

如果没有,您能否推荐其他可以提供我正在寻找的免费云服务?

【问题讨论】:

标签: caching next.js in-memory vercel


【解决方案1】:

一个选项可以使用 FaunaDB 和 Netlify,如 this post 中所述,但我最终打开了一个免费的 Wix 站点并使用 Wix data 来存储数据。我构建了http-functions module 以通过 REST 提供对数据的访问,它还将高度使用的数据缓存在内存中。目前它似乎很有效!

【讨论】:

    猜你喜欢
    • 2020-12-18
    • 2021-02-27
    • 2016-07-01
    • 2017-02-01
    • 2014-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-11
    相关资源
    最近更新 更多