原始问题发布在Github 讨论中。但目前还没有人回答这个问题。所以让我们在这里试试我的运气。
语境
我正在尝试建立一个平台(又名 web-2.0)网站,用户将在其中创建大部分内容,比如 Ebay。我决定useSWR
在页面加载后使用来获取用户特定的数据。现在,我在加载可缓存和支持 SEO 的页面骨架数据getStaticProps
之间进行选择。getServerSideProps
getStaticProps
生成 HTML 和 JSON 文件,这两者都可以由 CDN 缓存以提高性能。
从文档中,它没有详细说明getStaticProps
应该如何在生产中提供 CDN。我想知道它是否仅指纯静态的类似博客的网页,它们不使用fallback
nor regeneration
。我有一种感觉,getServerSideProps
在 server/lambda 前面使用 CDN 可能是一种更简单、性能更高的缓存架构。
问题
是否应该使用具有后备和再生功能的 NextJSgetStaticProps
来为用户制作的内容 Web 应用程序提供服务?
要得到这个问题的答案,我相信我需要先了解一些事情:
我不知道的事情,我找不到任何相关文档
getStaticProps
如上面提到的文档,应该如何使用 CDN 提供具有 、 后备和重新生成的页面?- 使用回退时,网络请求是否必须始终通过 NextJs?是否有将预渲染页面的 CDN 放在 server/lambda 前面同时支持
fallback
&的示例regen
?我的想法是避免服务器命中并在有预呈现页面时节省更多的处理时间和资源。 - 是否支持将新生成的 HTML
fallback
和regeneration
JSON 保存在 S3 等远程存储中,并让 NextJS 从中读取? - 如果上述问题的答案是否定的,那么当无服务器时,比如 Lambda,它如何重用新生成的文件?它是否依赖于非冷 Lambda 容器内存/状态?使用服务器时,我可以跨服务器共享新生成的工件吗?
我可能错过了一些文档。任何线索、链接或更正将不胜感激。
提前感谢=]
更新
我找到了更多信息,如下所示
对于剩下的问题,我已经在这篇文章中向 NextJS提出了这些问题。