我有一个 MongoDB 实例在 DigitalOcean 的云计算上运行。我的 Node(Express) 应用程序的另一个实例在另一个云计算上运行。有没有一种方法可以让我发现数据库的 IP,这样我就不必将其硬编码到我的应用程序中,从而可以更轻松地扩展?我知道您可以将实例连接到负载均衡器并对其进行硬编码,但这并不理想,并且无法在所有情况下工作,因为每次环境发生变化时都必须重新配置。我不想做一些访问 DigitalOcean API 的东西,因为这是特定于平台的,尽管我正在考虑这样做。我问的原因是我希望尽可能自动化配置,这样我就不必每次创建/销毁实例时都进行大量配置。我使用的是静态IP,所以更改IP不会有问题。我正在研究服务发现系统,例如 consul ,我可能会转向类似的事情,但我认为它(consul)对于我的应用程序来说似乎有点过分,尽管我正在考虑它。
最佳答案
您可以使用环境变量来避免将值硬编码到代码中。当应用程序以 dotenv 之类的包启动时,可以从进程环境加载这些值。 .
关于javascript - 从 NodeJS 服务器发现 MongoDB 服务器 IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56977592/