首页 > 解决方案 > Heroku Dynos 的持久音量

问题描述

我的 Java 应用程序是围绕嵌入式数据库构建的,该数据库将 db 数据直接存储到磁盘。我知道 Heroku 默认情况下是建立在一个临时文件系统上的,当 dynos 重新启动或者只是不坚持时,存储在其中的任何内容都将被删除。

使此类应用程序可用并在 Heroku 中部署的解决方法是什么?

标签: herokudyno

解决方案


我知道 Heroku 默认是建立在一个临时文件系统上的

这不是“默认”。它是Heroku 架构的基础,无法更改。Heroku 被设计成可以简单地水平扩展,并且该设计的一部分是状态应该存在于任何一个 dyno 之外。测功机是一次性的。

使此类应用程序可用并在 Heroku 中部署的解决方法是什么?

据我所知,不存在。更改保存数据的方式或选择其他主机。

(你也许可以在你的测功机上挂载一个共享的持久文件系统,但这很尴尬并且破坏了 Heroku 的架构。我不建议这样做。Heroku 的官方插件都没有提供持久文件系统,快速搜索会发现一些博客文章概述尝试,但我没有看到任何成功。)


推荐阅读