内容概要
本部分说明JGroups构建块接口RpcDispatcher,具体提供一个简单示例来说明如何使用JGroups构建块RpcDispatcher构建群组通信应用。
示例描述
类似MessageDispatcher,RpcDispatcher同属构建块主要接口,构建块基于通道之上,是对通道API的更高层抽象。程序设计者可以使用RpcDispatcher调运集群中任何节点上的任何方法,并等待所有节点上的返回。本示例使用 RpcDispatcher 提供的 callRemoteMethods() 方法调运集群中所有成员的方法,并验证返回的 RspList 对象中远程方法返回的结果,我们同样也验证 GET_ALL 响应模式,超时时间等属性。
示例步骤
本示例集群中有三个成员node1,node2 和node3,node1 为协调者(第一个加入集群)负责集群视图的更新。RpcMethods类定义了getNodeName()方法,三个节点都是做相同的事情,调运集群中所有节点上RpcMethods类的getNodeName()方法,并等待该方法的返回。使用JBoss Cluster Framework Demo 介绍所示的方法,任意从SourceForge下载或编译生成DEMO_HOME,本示例的启动脚本rpcDispatcher.sh位于DEMO_HOME/bin下。接下来我们依次启动三个节点: