Node.js和MongoDB应该在不同的pod中吗?

时间:2017-06-30 04:27:43

标签: node.js docker kubernetes google-cloud-platform ibm-cloud

我正在尝试托管一个连接到MongoDB的简单Node.js应用程序,我在网上看到,我发现了2种不同的方法和一些指南:

  1. 不同的豆荚:

      来自官方Kubernetes文档的
    • Example
    • 来自Google Cloud Platform官方文档的
    • Example
  2. 相同的pod:

      来自官方IBM文档的
    • Example
  3. 这让我感到困惑,这是实现这一目标的最佳做法?

1 个答案:

答案 0 :(得分:6)

你应该将它们放在不同的豆荚中。

在不同的pod中,您可以根据需要将Web应用程序部件的副本数量扩展到任意数量的实例,并且您仍然可以拥有MongoDB的一个实例。

如果您将它们放在同一个窗格中,则无法扩展到多个实例,因为每个副本都有自己的MongoDB实例,因此会分开数据。如果从Web应用程序对MongoDB进行数据更新,则会导致各种问题,因为后续请求可能会遇到差异实例,因此会看到不同的数据。