数据库服务器是否应该与应用程序位于不同的 VM 实例中?

数据库服务器是否应该与应用程序位于不同的 VM 实例中?

我正在将数据库服务器设置为服务器中的单独 VM,以便我可以控制资源并仅备份该实例。我拥有一台服务器,很快就会驻留在托管服务器中。这是处理数据库可扩展性的最佳方式吗?是否存在任何安全问题?localhost即使它是一个单独的实例,我是否仍能监听?并且,在同一台机器上运行数据库(在我的情况下为 PostgreSQL)和应用程序(在我的情况下为基于 Web 的 SAAS 应用程序)有什么好处吗?

答案1

可扩展系统通常会对应用程序和数据库进行分区,因此您走在正确的轨道上。只要您使用 pgSQL 的内置 IP 过滤,安全性就应该很好。

就在一台服务器上运行所有东西的好处而言,它肯定易于备份,但只需一次硬件故障,整个应用程序就会崩溃。

如果您刚刚开始,资金可能是不这样做的最大因素,但我建议两台物理服务器分别运行两个虚拟机(一个应用程序,一个数据库)并设置为能够相互故障转移。

答案2

我建议你从一台同时托管应用程序和数据库的机器开始。当你发现需要时,将数据库移动到单独的机器或集群或其他地方仍然相当容易。

在设置系统时,请记住您的基础架构将来可能需要更改。也许从一开始就为数据库分配一个主机名,这样您就不需要在移动数据库时更新应用程序。只需将主机名指向新位置即可。

拥有大量不必要的硬件(无论是物理硬件还是虚拟硬件)只会导致开销增加和潜在故障。你可能需要更多资源,也可能永远不需要,但不要从一开始就过度增长。

把事情简单化!

相关内容