2011-04-11 21 views
1

我发现了一些教程,教程如何在同一台机器上运行多个JBoss实例。运行多个JBoss时使用Service Binder的原因是什么(JBoss 4.2)

所有人都提到取消注释Service Binder并为每个服务器分别提供service-binding.xml文件。

问题是为什么它是这样做的?除了添加额外的间接层之外,是否有其他原因?

它看起来可以通过修改每个服务器的jboss-service.xml中的端口来完成。唯一的限制是,不会有简单的方法来切换哪个JBoss实例使用哪一组端口。

回答

2

您正在修改端口jboss-service.xml。这是改变港口的直接和真实的方式。

不幸的是,端口不仅在该文件中定义,而且在其他地方如jboss-web的配置等。
捕获所有这些地方可能容易出错。

所以这个想法是有一个居中在服务器安装根目录的中央文件(service-binding.xml)。你基本上将'默认'配置复制到server1,server2等,然后在启动时通过服务器名称中的命令行传递,以便从service-bindings.xml获取正确的所有服务的端口偏移量并应用于结果运行时配置。

JBossAS 7将这个概念向ServiceBindingGroups推进了一步,其中基本端口在域级别上定义,然后在每个服务器上选择一个基本组+只是按名称偏移一个端口,以使工作更少需要比在as4

相关问题