2011年计算机二级考试JAVA知识点整理(66)
文章作者 100test 发表时间 2011:04:13 19:52:32
来源 100Test.Com百考试题网
2.2 应用 JMX 最佳实践
构建 Java 应用程序需要许多复杂的分布式组件。现今,几乎所有的应用程序都要连接到遗留系统或其他 IT 资源。这些应用程序的分布式本质,为 IT 提出了一个难以置信的挑战,即一旦开发出一个应用程序,就要担负起维护该应用程序及其所有相关程序的重担。
由于企业开始采用面向服务的体系结构( Service-Oriented Architectures , SOA ),问题变得进一步复杂化了。 SOA 引入了一种设计风格,即把应用程序公开为,以松散耦合方式连接的服务。在 SOA 方法中,通常使用不同的编程语言和平台,来开发应用程序组件。在某些情况下,客户端和服务提供者之间的连接,直到运行时都无法确定。
寄希望于利用 SOA 的企业,现在需要一种更好的方式,来管理它们的分布式应用程序和服务。对处理现今应用程序异构和动态的本质来说,使用既定的底层管理技术(如 SNMP )已经不能满足需求。管理需要面向服务的风格—— META Group 将此称为面向服务的管理体系结构( Service-Oriented Management Architecture )或 (SOMA) 。( 参见 参考资料 )
SOMA 允许异构的托管系统和管理应用程序和平共处。面向服务的管理风格,可以消除现存的人工屏障,这些屏障,是由于依赖特定平台上的特定管理 API 而造成的。让我们进一步考察,如何通过 Java 管理扩展( Java Management Extension , JMX ) API ,而在 Java 中实现 SOMA 。
除了支持在管理产品之间进行更好的集成之外, SOMA 还使得开发自定义管理应用程序变得更加轻松。尽管企业通常依赖于开箱即用的管理解决方案,但也需要构建用于监控管理数据的,特定子集的自定义工具板。 SOA 风格的管理将使一个团队,能够使用反馈自 Web 服务的数据,来快速构建管理应用程序。 Web 服务是 SOA 实现中使用的常见技术。
SOMA 表述
区分管理接口和管理实现是相当重要的。 SOMA 中提出的设计原则,主要与托管系统和被托管应用程序之间的接口有关。关于在公开一项托管资源的过程中,所使用的底层实现, SOMA 没有任何表述。一个应用程序可能需要使用特定的 API ,并借助不同的管理接口进行公开。例如, Java 开发人员可以使用 JMX ,在他们的应用程序中增加易管理性。 JMX 使开发人员可以在他们的应用程序中使用 JMX MBean ,这样 JMX Mbean 服务器就可以发现并访问这些托管资源。
JMX 不仅仅是一个编程 API ,它还定义了一个包括监控和管理服务的体系结构,以及一个包括连接器和适配器的分布层。开发人员可以使用标准的 RMI 连接器,来外部公开管理接口。然而,如果您希望公开更多面向服务的管理接口,那么使用 RMI 连接器并非最佳方法。
现在已经提出了几个用于解决 SOMA 问题的标准。 Hewlett-Packard (HP) 所进行的早期工作,导致了第一批基于 SOA 的管理标准的出现,其中之一是: Web 服务管理框架( Web Services Management Framework , WSMF )。 HP 把 WSMF 提供给了 Web Services Distributed Management (WSDM) , WSDM 是一个 OASIS 技术委员会,创建它的目的是,为用于可管理资源的 Web 服务接口定义规范。