技术开发 频道

在 WebSphere Application Server 中部署多个共存应用程序并解决相应

    企业度量

    WebSphere Application Server 还支持应用程序响应度量 (ARM) 标准。WebSphere Application Server 的许多内部元素(Web 容器、EJB 容器及其他元素)都进行 ARM 检测。诸如用于响应时间跟踪的 ITCAM 之类的工具在事务到达 HTTP 服务器、通过应用服务器甚至进入数据库层时,可以报告该事务的各种组件的响应时间。一般情况下,会定期对触发的综合事务进行 ARM 检测,以减少测量开销。

    您可以使用 ARM 标准检测代码来增加报告度量的粒度。IBM 通过 Build To Manage (BTM) Toolkits 为此提供了一个方便的解决方案,目前在 developerWorks 上提供。BTM 提供了一个简单的 Eclipse 接口,可以让用户为检测选择类。BTM 然后为这些类自动生成 ARM 代码(图 1)。而且,通过按强命名标准区分类,ARM 可帮助您更好地指出问题类及其拥有者。

图 1. Build To Manage 检测示例
 

    5. 在应用程序之间分离管理功能

    在具有多个区别相当大的应用程序环境中(可能由不同的团队开发和维护),通常需要将管理功能分离开,这样每个团队都可以管理自己应用程序的开发和操作,而无需访问其他应用程序。此类分离仅限于多个应用程序共存于单一应用服务器上这一有限配置级别。实际上存在许多服务器范围的资源,这些资源必须由至少对整个服务器有管理访问权的人员进行管理。不过,可以分离一些管理功能,例如,以每应用程序为基础启动/停止/配置某个应用程序。在单一服务器环境中这样做与在传统的多服务器环境上这样做实际在技术上是相同的:

    为每个最常用的管理操作创建多个 wsadmin 脚本。确保将每个脚本配置为能够访问足够的凭据,以便可以在服务器上操作,但将脚本本身的访问权限制在每个适当的用户组。此方法虽然比较复杂,但对 WebSphere Application Server 的所有当前版本都适用。

    另外,WebSphere Application Server V6.1 还包括一项名为细粒度管理安全性的功能,通过该功能可以为每个应用程序定义不同的权限组,并仅将该权限组的访问权授予 WebSphere Application Server 身份验证域中的特定用户。请注意,此工具仅在通过 wsadmin 工具进行访问时适用。为有效使用管理控制台,用户需要对整个系统有广泛的访问权限。

    6. 始终考虑系统范围的整体情况

    最后,尽管本文大部分内容都在集中讨论如何确定和隔离属于某个特定应用程序的信息,但是有关故障诊断的文章如果不提示始终要从全局角度考虑故障诊断则是不完整的。即使在非常好的设计的系统中,在应用程序之间、服务器之间以及每个服务器和各种外部服务或资源之间也可能始终存在一些无法预料的交互。因此,优秀的故障诊断人员在尝试寻找问题的原因以及了解系统行为的同时始终会兼顾全局情况。

    结束语

    在单一的 WebSphere Application Server 实例中部署多个共存应用程序可以在某些环境中提供非常有价值的好处,但在隔离问题和确定问题方面也可能产生一些特有的困难。在大多数情况下,通过认真设计和管理服务器中每种资源类型的共享方式,通过很好地跟踪每个与应用程序相关的对象或资源的标识,并通过对系统监视和故障诊断使用良好的原则和可靠的技术,可以有效地排除这些困难。

0
相关文章