这可能是一个长镜头,但我想我还是会问。
我正在考虑将 Heroku 的新 Crane Postgres DB(400 MB RAM 缓存)与我在 Heroku 上部署的应用程序结合使用。400 MB 的缓存大小应该足以满足我们的需求……除了一张表的一列,我们将缓存的 PDF 文件存储为字符串。如果 Heroku 使用它的缓存,PDF 可以很容易地很快用完 400MB RAM。
如果我在一个实际的服务器上,我只是将 PDF 存储为一个文件,但考虑到 Heroku 的临时文件系统,如果我只是将 pdf 存储在数据库中而不是仅仅为了连接到 S3,我的生活会简单得多这件事。(这使我们正在考虑部署多个 heroku 实例,每个客户端一个......因此使用数据库比为每个实例创建一个新存储桶更简单。)我并不真正关心这方面的速度。如果人们正在获取文件,他们会期望速度就像它来自文件系统一样,因为大多数文件下载都是这样完成的。有什么方法可以告诉 PostGRES 不要打扰缓存此列?
或者也许我问错了问题,还有其他方法可以解决问题或设计替代方案,使其无关紧要。