Java 我是否应该备份一个webapp';是否将数据连续发送到另一台主机?

Java 我是否应该备份一个webapp';是否将数据连续发送到另一台主机?,java,web-applications,backup-strategies,Java,Web Applications,Backup Strategies,我正在开发一个webapp。我需要计划一下如果主人倒下会发生什么。 我将丢失一些最近的会话状态(我可以接受),其他所有内容都应持久存储在数据库中 如果我在停机后再次启动,我是否可以期望一台好的主机在几分钟或几秒钟内将数据库重建到我所处的位置,或者我是否应该构建一个后台进程以在其他地方不断镜像数据库 什么是正常/合理的 很明显,一个好的主机会有RAID和其他冗余,所以完全丢失的可能性应该很低,如果他们有定期备份,我应该只丢失最近的东西,但这可能是在考虑到几乎静态的web内容的情况下设计的,我的站点

我正在开发一个webapp。我需要计划一下如果主人倒下会发生什么。 我将丢失一些最近的会话状态(我可以接受),其他所有内容都应持久存储在数据库中

如果我在停机后再次启动,我是否可以期望一台好的主机在几分钟或几秒钟内将数据库重建到我所处的位置,或者我是否应该构建一个后台进程以在其他地方不断镜像数据库

什么是正常/合理的

很明显,一个好的主机会有RAID和其他冗余,所以完全丢失的可能性应该很低,如果他们有定期备份,我应该只丢失最近的东西,但这可能是在考虑到几乎静态的web内容的情况下设计的,我的站点是事务性的,不断地归档新数据(客户希望我永远不会失去它)

有什么建议吗

有现成的框架来做这件事吗?(我主要在Java中工作。)
我应该仅仅计划保存数据,还是应该计划在主机无法在适当的时间段内恢复时,准备启动另一个可用的主机实现?

您需要一个复制策略,这当然取决于您的数据库引擎。 这通常是通过配置完成的。

我在Informix方面有过经验,您可以设置数据复制以使备用系统可用,或者对数据进行完全备份,并重放逻辑日志(基本上包含所有SQL语句),这需要更多的时间从崩溃中恢复


在磁盘崩溃的情况下,使用冗余存储也是一个好主意。在serverfault.com上讨论这个主题可能更好。您需要一个复制策略,当然这取决于您的数据库引擎。 这通常是通过配置完成的。

我在Informix方面有过经验,您可以设置数据复制以使备用系统可用,或者对数据进行完全备份,并重放逻辑日志(基本上包含所有SQL语句),这需要更多的时间从崩溃中恢复

在光盘崩溃的情况下,使用冗余存储也是一个好主意。在serverfault.com上讨论这个主题可能更好