【发布时间】:2014-12-10 18:43:32
【问题描述】:
背景
我的环境 - Java、Play2、MySql
我在 Play2 上写了 3 个无状态的 Restful 微服务 -> /S1,/S2,/S3
S1 使用来自 S2 和 S3 的数据。因此,当用户点击 /S1 时,该服务会异步调用 /S2、/S3,合并数据并返回最终的 json 输出。旁注 - 服务最终将作为 docker 镜像提供。
为了在开发人员环境中进行测试,我分别在端口 9000、9001 和 9002 上运行 /s1、/s2、/s3。我从配置文件等中获取端口号。我点击了服务,一切正常。但是有更好的方法来在我的开发人员盒子上设置测试环境吗?示例 - 如果我想运行 20 个服务等怎么办?
话虽如此,在生产环境中,它们将被称为 mydomain.com/s1、mydomain.com/s2、mydomain.com/s3 等。我想在我的开发环境框中完成此操作....我猜想我会想到一些反向代理。
问题
所以问题是,我如何在 S1 中调用 /S2 和 /S3 而无需在开发人员环境中指定或使用端口号。人们如何在本地机器上测试微服务?
额外奖励
知道我将把我的服务作为 docker 镜像发送,我如何使用 docker 容器(每个容器运行一个服务)来完成同样的事情
【问题讨论】:
标签: java rest playframework docker