【发布时间】:2017-10-09 06:34:52
【问题描述】:
我正在测试驱动 WebSphere Application Server 9,完整配置文件,我对启动配置文件所需的时间很感兴趣。 我已经安装了一个应用程序,理论上,这可能是罪魁祸首,但日志没有显示任何证据。 日志文件的相关部分:
[14-07-2016 9:15:06:955 BST] 0000005b ApplicationMg A WSVR0221I: Application started: isclite
[14-07-2016 9:15:06:956 BST] 0000005b CompositionUn A WSVR0191I: Composition unit WebSphere:cuname=isclite in BLA WebSphere:blaname=isclite started.
[14-07-2016 9:16:14:410 BST] 0000005a InternalGener I DSRA8225I: DataSource JNDI name : jdbc/DefaultEJBTimerDataSource
[14-07-2016 9:16:14:413 BST] 0000005a InternalGener I DSRA8203I: Database product name : Apache Derby
[14-07-2016 9:16:14:413 BST] 0000005a InternalGener I DSRA8204I: Database product version : 10.11.1.1 - (1616546)
[14-07-2016 9:16:14:413 BST] 0000005a InternalGener I DSRA8205I: JDBC driver name : Apache Derby Embedded JDBC Driver
[14-07-2016 9:16:14:414 BST] 0000005a InternalGener I DSRA8206I: JDBC driver version : 10.11.1.1 - (1616546)
[14-07-2016 9:16:14:414 BST] 0000005a InternalGener I DSRA8218I: JDBC driver specification level : 4.2
[14-07-2016 9:16:14:773 BST] 0000005a WASSchedulerC I SCHD0100I: Scheduler tables verified successfully.
正如您在第 2 行和第 3 行看到的,服务器等待了超过一分钟。 没有异常或任何其他可能表明存在问题的信息被记录。
有谁知道可能是什么问题?
编辑#1:
按照 XSurgent 的建议,我已禁用应用程序的自动启动并重新启动服务器。启动时间正常,但指示 Apache Derby 正在启动的行不再可见,这似乎表明 Derby 启动一直在消耗这些时间。我的推理有意义吗?
编辑 #2:
我已更改 EJB 计时器以使用不同的数据库(Oracle 而不是嵌入式 Derby),但 1 分钟的延迟仍在发生。
【问题讨论】:
-
一些事情:1) 'isclite' 是与 WAS 捆绑在一起的管理控制台应用程序。 2)您可以禁用您的应用程序在服务器启动时启动,看看它是否有所作为。 3) 性能很大程度上取决于您的系统,因此请确保您满足并超过 WAS 9 的系统要求以获得良好的性能。
-
您可以尝试对管理控制台进行跟踪。按照this technote中的说明进行操作
-
既然延迟已缩小到应用程序,请考虑使用跟踪来分析启动。延迟可能与 Derby 启动无关。上面显示的日志是在数据源访问数据库时打印的。因此,Derby DB 应该在日志中的这一点之前启动并运行。
-
不应为任何系统应用程序运行 CDI 处理步骤。 CDI 处理被编码为跳过/忽略系统应用程序。
标签: websphere