高影响力的Web层群集,第一部分: 利用JavaGroups扩展 - 编程入门网
编码模式可适用于许多分布式设计,并且特别地被创建用来与 JavaGroups 通道很好地协 同工作。例如,通过对 RpcDispatcher 编程,您可以大大地减少涉及远程过程调用语义的分 布式应用所需的代码。 马上可以使用的分布式数据结构 org.javagroups.blocks 包中的其他编码模式提供完整的、马上可以使用的、高级别的分 布式数据结构,其中的一部分列表显示在表 2 中: 表 2. 高级别的分布式数据结构作为构造块
高影响力的Web层群集,第一部分: 利用JavaGroups扩展(6)时间:2011-04-16 IBM Sing Li插入式通道实现 到目前为止,我们已经谈论了 JavaGroups 通道,就好像它是一个具体实现一样。但是, 通道实际上是 JavaGroups 中的一个抽象的类。实际上,当前的 JavaGroups 分布带有多个 通道实现,如图 6 所示: 图 6. 通道抽象和具体的实现 JChannel EnsembleChannel 通过一个用 Java 编写的连接器访问 Ensemble (参见 参考资料), Ensemble 是一个健壮的进程组通信基础 (非Java)。 通过创建您自己的通道实现也可以扩展 JavaGroups。 利用 JavaGroups 进行编程 JavaGroups 的一个典型使用场景涉及以下步骤: 实例化一个通道并初始化必需的协议栈。 连接到通道。 开始发送消息或者处理入站消息 (有可能是在构造块的帮助下)。 断开连接并关闭通道。 假设我们使用的是 JChannel, 我们只要设置一个初始字符串就可以创建一个协议栈 (或 者也可能用到一个外部的基于 XML 的配置文件――参见 参考资料 部分中的 “JavaGroups 用户指南”链接,以了解基于 XML 配置的更多信息)。清单 1 是 这样的字符串的一个例子: 清单 1. JavaGroups 初始化的配置字符串 字符串的每个组件用冒号 (:) 分开,分别指定了一个微协议。每个微协议实现一个可组 合的协议特性或质量。实际上,每个微协议由一个相同名称的 Java 类实现,并且由 JChannel 在运行时加载。许多这些微协议都可以在 org.javagroups.protocol 包中找到, 但是协议设计者可以使用任意的包名称。栈中指定的每个微协议可以有一个或多个对应的属 性,可以在初始字符串中的括号中设置这些属性。协议栈是在运行时自底往上建立的,根据 初始字符串,逐层增加微协议。 高影响力的Web层群集,第一部分: 利用JavaGroups扩展(7)时间:2011-04-16 IBM Sing Li运行时可配置、可堆叠的微协议 表 3 显示了一些经常使用的微协议的描述,其中包括我们的样例初始化字符串所使用的 一个微协议。要了解单个属性细节的更多信息,请参见 参考资料部分到"JavaGroups 用户指南"的链接。 表 3. JavaGroups 微协议
|
||||||||||||||||||||||||||||||||||||||||||||||||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |