6.3. 클러스터링 서비스를 위한 공용 API
JBoss EAP 7은 애플리케이션에서 사용할 수 있는 구체화된 공용 클러스터링 API를 도입했습니다. 새 서비스는 외부 종속성 없이 가볍고 쉽게 주입할 수 있도록 설계되었습니다.
org.wildfly.clustering.group.Group그룹 서비스는 JGroups 채널의 클러스터 토폴로지를 보고 토폴로지가 변경될 때 알림을 받는 메커니즘을 제공합니다.
@Resource(lookup = "java:jboss/clustering/group/channel-name") private Group channelGroup;
org.wildfly.clustering.dispatcher.CommandDispatchercommand
DispatcherFactory서비스는 클러스터의 노드에서 명령을 실행하기 위한 디스패처를 생성하는 메커니즘을 제공합니다. 결과CommandDispatcher는 이전 JBoss EAP 릴리스의 그림 기반GroupRpcDispatcher에 대한 명령-패턴 아날로그입니다.@Resource(lookup = "java:jboss/clustering/dispatcher/channel-name") private CommandDispatcherFactory factory; public void foo() { String context = "Hello world!"; // Exclude node1 and node3 from the executeOnCluster try (CommandDispatcher<String> dispatcher = this.factory.createCommandDispatcher(context)) { dispatcher.executeOnGroup(new StdOutCommand(), node1, node3); } } public static class StdOutCommand implements Command<Void, String> { @Override public Void execute(String context) { System.out.println(context); return null; } }