Page tree
Skip to end of metadata
Go to start of metadata

默认情况下,eazyBI在同一个Jira JVM进程中运行,并与Jira和所有其他Jira插件共享JVM堆内存和其他资源。


原理

eazyBI是使用嵌入式Mondrian OLAP引擎来进行报告查询的。当您执行需要访问所有问题数据的复杂查询时,Mondrian OLAP引擎可以将所有可用的Java堆内存用于报告结果缓存。在进行详细问题钻取时,或者需要针对所有问题计算某些度量时,或者在报表中交叉连接多个维度时,都会发生这种情况。如果Mondrian OLAP引擎将使用所有可用的JVM进程堆内存,那么它可能会显着降低整体Jira性能。

因此,为eazyBI添加了新的单独“Child Process”选项。如果启用它,则eazyBI加载项将启动单独的Child JVM进程,并以此子进程来出具执行查询出具报告。CPU和Mondrian OLAP引擎操作将仅在此子进程中执行,不会影响主Jira JVM进程堆内存使用情况。

开启设置

可以在eazyBI设置页面(最初指定数据库连接的位置)中启用单独的子进程。您需要指定以下选项:

  • Port
    Child Process进程将在此TCP / IP端口上侦听来自eazyBI插件的请求。默认情况下,建议使用端口号3801。如果在同一服务器上使用eazyBI插件运行多个Jira实例,则在每个实例中指定不同的端口号。
  • JVM Options
    要用于子JVM进程的其他JVM选项。默认情况下,使用以下选项:(  -Xms256m 将初始JVM堆大小设置为256MB),  -Xmx1024m (将最大JVM堆大小设置为1GB),  -XX:MaxPermSize=256m (将JVM PermGen大小设置为256MB - 不用于Java 8)。如果您希望将JVM最大堆大小增加到例如2GB,则将“JVM选项”指定为  -Xmx2g


开启之后 ,我们可以在服务器上查看到,有另外一个JVM来执行任务。


注意

请确保运行Jira的服务器有足够的可用内存用于其他子进程。如果操作系统无法为子进程提供所需的内存,则会导致磁盘内存交换和服务器性能下降。


日志文件

子进程将在Jira主目录log 子目录中创建和使用以下日志文件  :

  • eazybi-child.log - 如果子进程成功启动,则代理到此进程的报告请求将记录在此日志文件中(以前记录在主  eazybi-web.log 文件中)。
  • eazybi-child.out - 初始子进程启动消息记录在此文件中。如果未启动子进程,则很可能您会在此文件中看到错误。如果您需要帮助以了解错误原因,请将此文件发送到eazyBI支持。
  • eazybi-child.pid - 在此文件中存储子进程PID(进程号)。


故障排除信息

 系统管理故障排除页面中有一个单独的Child Process部分(如果启用了子进程,则会显示该部分)。在本节中,您可以看到:

  • 子进程的当前状态。
  • 子进程的JVM堆内存统计信息 -  Total  内存(当前分配的内存),  Free  内存(来自总内存),  Max 内存(总内存可以扩展的最大限制 - 对应于  -Xmx JVM选项)。
  • JVM进程CPU使用率(Windows上不可用)。

如有必要(例如,如果子进程占用过多的CPU或进程被卡住),您可以从此处重新启动子进程。如果要更改子进程选项(例如JVM max memory选项或端口号),请转到系统管理  设置  页面。

在  Log File  部分中,您还可以查看最后1000行  eazybi-child.log 或  eazybi-child.out 文件。

  • No labels