1.9. 关于服务器组

服务器组是一个进行集中管理和配置的服务器实例集合。在受管域里,每个应用服务器实例都属于一个服务器组,即使它只是唯一的成员。组里的服务器实例共享相同的配置集和部署的内容。
域控制器和主机控制器在域里的每个服务器组的所有服务器实例上强制实施标准的配置。
域可由多个服务器组组成。不同的服务器组可以用不同的配置集和部署来配置。域可以用提供不同服务的不同服务器层来配置。
不同的服务器组也可以由相同的配置集和部署。例如,允许应用程序升级的轮换,当应用程序在某个服务器组上升级后再在另外的服务器组里更新,从而避免了整个服务的中断。
下面是一个服务器组定义示例:
<server-group name="main-server-group" profile="default">
 <socket-binding-group ref="standard-sockets"/>
  <deployments>
   <deployment name="foo.war_v1" runtime-name="foo.war"/>
   <deployment name="bar.ear" runtime-name="bar.ear"/>
  </deployments>
</server-group>
服务器组包括下列强制的属性:
  • name:服务器组的名称
  • profile:服务器组的配置集的名称
  • socket-binding-group:用于组里服务器的默认套接字绑定组的名称。在 host.xml 里可以对每个服务器覆盖这个名称。然而,对于每个服务器组这都是一个强制性的元素,如果缺失,域将无法启动。
服务器组包含下列可选属性:
  • deployments:部署在组里服务器上的部署内容
  • system-properties:组里服务器上设置的系统属性
  • jvm:组里所有服务器的默认 JVM。主机控制器将这些设置和 host.xml 里的其他配置进行合并以生成启动服务器的 JVM 的设置。