WebLogic Server 性能及调优-调整资源适配器调优

更新时间:2023-12-09 16:00:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

WebLogic Server 性能及调整

-调整资源适配器

本附录向资源适配器开发人员介绍了一些最佳实践。

? 资源适配器的类加载优化 ? 连接优化 ? 线程管理

? InteractionSpec 接口

资源适配器的类加载优化

可以将资源适配器类打包到一个或多个 JAR 文件中,然后将 JAR 文件放置到 RAR 文件中。这些文件称为嵌套的 JAR 文件。当在 RAR 文件中嵌套 JAR 文件并需要通过类加载器加载类时,则必须要针对每个必须加载的类打开、关闭和迭代 RAR 文件中的 JAR。 如果 RAR 文件中的 JAR 数量很少且相对较小,则不会对性能产生太大的影响。另一方面,如果有很多 JAR 文件,而且 JAR 很大,则会对性能造成较大的影响。 为了避免出现这些性能问题,可以执行下列操作之一:

? 以展开格式部署资源适配器。这可以消除 JAR 嵌套,因此可以减少在查找类时引起的性能下降。

? 如果不可以选择以展开格式部署资源适配器,则可以在 RAR 文件中展开 JAR。这样同样取消了 JAR 的嵌套形式,并因此显著提高了类加载的性能。

连接优化

BEA 建议资源适配器实现 J2CA 1.5 Specification 的 7.14.2 和 7.14.2 两部分描述的可选增强功能。通过实现这些接口,WebLogic Server 可以提供若干只有依靠这些接口才可以使用的功能。

通过 7.14.1 一节中描述的 Lazy Connection Association,服务器能够自动清除未使用的连接,并防止应用程序独占资源。通过 7.14.2 一节中描述的 Lazy Transaction Enlistment,应用程序能够在打开连接之后启动事务。

线程管理

资源适配器实现应使用 WorkManager(如 J2CA 1.5 Specification 中的“Work Management”所述)启动需要在新线程中运行的操作,而不是直接新建线程。这使得 WebLogic Server 能够管理和监控这些线程。

InteractionSpec 接口

WebLogic Server 支持用于 EIS 访问的公用客户端接口 (CCI),如 J2CA 1.5 Specification 的“Common Client Interface”中的定义。CCI 为应用程序组件定义了标准的客户端 API,使得应用程序组件和 EAI 框架能够跨异构 EIS 进行交互。

作为一项最佳实践,不应将 CCI 资源适配器需要实现的 InteractionSpec 类存储在 RAR 文件中。而是应将其打包到 RAR 文件之外的单独 JAR 文件中,以便客户端能够访问到它,而无需将 InteractionSpec 接口类放到通用 CLASSPATH 中。

对于 InteractionSpec 接口,一定要注意:当所有应用程序组件(EJB、资源适配器和 Web 应用程序)被打包到 EAR 文件中后,可将所有通用类放置到 APP-INF/lib 目录中。这是可能出现的最简单的场景。

这不适用于独立资源适配器(打包成 RAR 文件)。如果接口是可序列化的(如 InteractionSpec 即为这种情况),那么客户端和资源适配器都需要访问 InteractionSpec 接口和实现类。但是,如果接口扩展了 java.io.Remote,则客户端只需访问接口类。

本文来源:https://www.bwwdw.com/article/c1c5.html

Top