我正在通过编写一个小型Web应用程序来学习微服务架构。该应用程序具有以下组件,每个组件将由docker容器托管。
在我用NodeJS编写的API网关中,我会调用一些地方:
request('http://service_b_ip_addr:port/get_service_b', callback);
但是,在Marathon创建了Service B的docker容器之前,service_b_ip_addr
和port
都不知道。
使用某些服务发现机制,例如 mesos-dns 或 marathon-lb ,我想我可以将service_b_ip_addr
更改为类似{{{ 1}}。
但我不知道如何将service_b.marathon.com
放入我的计划中。
提前感谢您的帮助。
PS:
port
是一个NATted随机数。