问题描述
我正在尝试构建一个小型站点,该站点从数据库中获取其数据(当前我使用Firebase的Cloud Firestore)。
我已经使用next.js构建它,并考虑将其托管在vercel上。看起来非常好,并且运行良好。
但是,该站点需要处理大约1000个小文档-服务,搜索和很少更新。为了减少在每个请求上对数据库的调用,这不仅在时间上而且在数据库定价上都非常昂贵,我认为最好是服务器在启动时(或在第一个请求上)获得项目的完整列表,然后将它们保存在内存中,并让数据请求从其内存中获取数据。
它在本地开发服务器上运行良好,但是当我将其部署到vercel
时,它不起作用。似乎it forces me to work in serverless mode中的每个请求都是单独的,我无法使用公共的内存缓存来获取数据。
我错过了什么吗,有没有办法在next.js
上使用vercel
来达到类似的目的?
如果没有,您是否可以推荐其他可以提供我所需要的免费云服务?
解决方法
一个选项可以使用FaunaDB和Netlify,如this post中所述,但是我最终打开了一个免费的Wix网站,并使用Wix data来存储数据。我建立了http-functions module来通过REST提供对数据的访问,该REST也将高使用率的数据缓存在内存中。当前,它似乎像一种魅力!