问题描述
假设我需要为大约 1000 个 REST API 存储和组织 API 文档。每个 API 都提供一个 JSON 格式的 swagger 文件和带有用于指南、教程和代码示例的图像的文本文件。用户可以更新文档,通过API名称、URL、请求字段等进行浏览和查询,也可以搜索文本文件。
我可能可以将文本文件和图像存储在某些云存储(例如 S3)中并创建全文搜索索引。我想知道如何存储 swagger 文件。我应该将它们作为文本文件存储在云存储中还是将它们存储在文档数据库(例如 Mongo)中?
你怎么看?
解决方法
“swagger 文件”究竟是什么意思?从 openAPI 模式文件生成的输出?
我想知道您为什么要将其托管在数据库中?为每个“REST API”拥有一个 S3 存储桶并将该存储桶改为 static web server 会不会容易得多?使其自动访问并且从不依赖于与辅助服务的连接?
您可能仍想使用数据库来组织用户/编辑者/管理员,但最终我只会将所有内容托管在 CDN 中,并确保在生成新更新时覆盖并清除缓存 (CloudFront),您可以甚至有“文件夹”来在该存储桶中托管一个版本,因此如果有任何错误,用户可以轻松恢复到以前的版本......
你不同意吗?