性能
您 Qlik NPrinting 系统的性能将取决于大量因素。在计划您的部署时,您必须考虑:
- 您部署的大小
- 所需的 Qlik NPrinting Engine 数目
- 您计划使用的连接类型
- 每个 Qlik NPrinting Engine 需要的 CPU 核心数
- Qlik NPrinting Engine 计算机需要的 RAM 数量
性能准则
要调整您的安装,可考虑以下方面:
- Qlik NPrinting Engine 的数目
- 每个 Qlik NPrinting Engine 的 CPU 核心数目
- Qlik NPrinting Engine 计算机需要的 RAM 数量。
使用该信息来帮助自己规划系统。
Qlik NPrinting Engine 的数目
增加与 Qlik NPrinting Server 关联的 Qlik NPrinting Engine 数量将成比例地提高性能。例如,如果您的安装从两个 Qlik NPrinting Engine 增加到四个 Qlik NPrinting Engine,则创建和交付同一组报表所需时间减半。交付一组报表所需总时间还取决于一些外部因素,例如 SMTP 服务器的性能。
每个 Qlik NPrinting Engine 的 CPU 核心数
CPU 核心数对性能的影响取决于报表是基于指向 QlikView 的连接还是基于指向 Qlik Sense 的连接。
如果您使用 Qlik Sense 连接创建报表,则性能会随 CPU 核心数增加而成比例提高。例如,如果从四核 CPU 改为八核 CPU,则创建同一组报表所需时间减半。交付一组报表所需总时间还取决于一些外部因素,例如 SMTP 服务器的性能。如果您的连接专门用于 Qlik Sense 应用程序,则对该关系不存在上限。
如果您使用 QlikView 连接创建报表,则性能会随 CPU 核心数增加而成比例提高,直至达到 12 个核心为止。如果 CPU 核心数超过 12 个,则性能不再成比例提高。之所以出现这种性能变化,是因为 Qlik NPrinting Engine 会对每个 CPU 核心启动一个 QV.exe 实例,并使用 QlikView 书签来应用过滤器。QlikView 书签会写入一个文件,因此,对于每个 CPU 核心,都需要向同一个文件读取和写入一个 QV.exe 实例。在 QV.exe 实例或 CPU 核心数超过 12 个后,如果访问书签文件时发生冲突,则可能导致性能显著下降。如果您打算仅连接至 QlikView 文档,我们建议您将 Qlik NPrinting Engine 安装在最多 12 个核心的物理或虚拟计算机上。指向 Qlik Sense 应用程序的连接不会受到此限制的影响。
Qlik NPrinting 可以同时使用 QlikView 连接和 Qlik Sense 连接的数据创建报表。对于该场景目前尚无性能测试结果。
Qlik NPrinting Engine 计算机需要的 RAM
Qlik NPrinting Engine 计算机需要的 RAM 量取决于用来创建报表的 QlikView 文档。在 Qlik NPrinting Engine 上,每个 QV.exe 实例都会打开一个 QlikView 文档。例如,如果 Qlik NPrinting Engine 服务器有四个 CPU 核心,则表示它运行四个 QV.exe 实例,而这些实例会打开四个 QlikView 文档。要充分管理这四个 QlikView 文档,以确保性能优异,需要具有足够多的 RAM。
部署示例
以下示例概述了扩展 Qlik NPrinting 部署的一些基本架构和硬件选项。
单引擎(小型)
该示例为最小规格,包括单个 Qlik NPrinting Server,在同一服务器上安装了 Web 引擎、调度程序以及储存库。
- 1 Qlik NPrinting Server
- 4 CPU 核心
- 32 GB RAM
单引擎(中型)
该示例具有更多 CPU 核心但是也包括单个 NPrinting 服务器,在该服务器上安装了 Web 引擎、调度程序以及储存库。随着需求增加,更多 CPU 核心有助于改善性能。
- 1 Qlik NPrinting Server
- 8 CPU 核心
- 32 GB RAM
多引擎(大型)
随着您的需求增大而需要生成大量报表,扩展性会越来越重要。该示例包括单个 NPrinting 服务器,但是有三个 NPrinting 引擎,改善了性能和稳定性。
- 4 个服务器(1 个 Qlik NPrinting Server,3 个 Qlik NPrinting Engine(
- 每个服务器 12 个 CPU 核心
- 每个服务器 32 GB RAM
请参阅: 多引擎部署示例:从 QlikView 部署大量 Excel 报告
故障排除
可能的原因
有数个因素可能导致性能损失。
建议的操作
- 检查 Qlik NPrinting Engine 计算机的硬件资源。
- 如果连接至 QlikView 文档,确保 QlikView 计算机具有足够的资源来管理源文档。
- 检查 QlikView 源文档:
- 打开它并在 Qlik NPrinting Engine 中应用过滤器所需时间是否较长?保存所有图表最小化以缩短打开时间的 .qvw。
- 仅为 Qlik NPrinting 报告创建 QlikView 文档或 Qlik Sense 应用程序。复制初始数据并删除所有不必要的数据。
- 在可行时,从图表到脚本移动已计算字段。每次您应用过滤器时,都会重新计算这些字段。
- 报表生成时间取决于报表中层级和页面的数目。层级或页面中的每个值为过滤器,因此您必须等待过滤器计算。在报表中使用 Excel 透视表而非使用层级。