我有一个需要部署在不同服务器上的mule应用程序。我有问题为基于HTTP的端点地址设置主机名
主机名应该来自属性文件,在构建时根据构建应用程序的环境替换它 -
Example --
http:inbound-endpoint address="http://${host.name}:61005/my/service" exchange-pattern="request-response"
或者是否可以使用hostname构建可部署的应用程序作为localhost并在部署时替换它
Example --
http:inbound-endpoint address="http://localhost:61005/my/service" exchange-pattern="request-response"
提前致谢。
答案 0 :(得分:4)
您可以使用0.0.0.0作为主机,它将侦听服务器的每个网络接口:
<http:inbound-endpoint address="http://0.0.0.0:61005/my/service" exchange-pattern="request-response" />
这意味着,例如,如果您的服务器具有IP 192.168.0.1,它将自动在http://192.168.0.1:61005/my/service/
处理服务请求
它将使您免于配置部署文件。
答案 1 :(得分:2)
属性文件可以正常工作但请记住Spring的Property Placeholder Resolver也可以从Java系统属性中获取值,因此您可以在启动时为${host.name}
提供值:
mule -M-Dhost.name=$HOSTNAME