历史版本42 :负载管理 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本功能变更
11.0-
11.0.2

1)3.2 节,「内存会话」新增「最近访问时间」字段

2)模板限制,模板限制增强插件功能内置

11.0.4

1)命名优化

  • 「内存管理」功能更名为「负载管理」

  • 「内存预警」功能更名为「负载监控」

  • 「实时内存」功能更名为「实时负载」

2)负载监控功能优化

  • 2.1节,实时负载,新增负载监控

  • 2.2节,智能预警,改为根据负载状态触发预警

3)内存会话功能优化

  • 3.1节,优化报表会话内存估算方式

4)智能检测功能优化

  • 新增「报表结果表内存智能释放」按钮,可自动释放掉无效的结果表引用,降低系统内存占用,不影响报表预览

1.2 功能简介

负载管理包括负载、内存和 CPU 利用率的实时监控和预警,当负载达到指定的瓶颈值时触发短信、邮件、消息等的提醒。

此外还支持智能控制会话的存活、清除、模板限制、生命周期等,保障服务器的稳定运行。如下图所示:

注:若使用 WebSphere8.5 服务器部署 或 内置JDK11的设计器 ,在设计器内置的服务器中使用负载管理功能时,会出现提示「技术升级中,设计器内置的服务器暂不支持负载管理功能,如使用负载管理功能请使用服务器部署方式」。

2. 负载监控编辑

负载监控包括「实时负载」和「智能预警」两部分。

2.1 实时负载

使用图表直观的展示当前系统的最多最近半小时内存利用率和 CPU 利用率,如下图所示:

1)负载

由于 GC 机制的作用,通过内存使用率来表征 JVM 负载高低的方式并不能很好地反应 JVM 真实负载情况。

因此 FineReport 引入负载分来反应 JVM 真实负载情况,通过GC 回调来获取 GC 数据,并准确衡量 JVM 负载的各种状态。

2)内存利用率 = 当前使用的内存 / 可以使用的最大内存

当前使用的内存:当前使用的内存大小(字节)

最大内存:可以使用的最大内存(字节),分配给 JVM 的最大内存

3)CPU利用率 = 采集时刻 CPU 使用率

注1:负载监控是计算得出的服务器实际压力情况,内存与CPU监控仅代表客观状态,无法准确体现服务器压力情况,仅供参考。

注2:实时负载」功能可自定义开关。

2.2 智能预警

2.2.1 功能简介

1)触发条件

智能预警触发的条件:连续三次的 fullgc 之后老年代使用率都在 90% 以上。

2)时间间隔限制

两次预警之间的时间间隔不得小于 5 分钟。

例如:14:00 满足预警条件触发了一次通知,14:03 分再次满足了预警条件,但此次不进行通知。

3)智能预警通知内容

您好,#webname#系统#clustername#当前负载状态过高,可能存在宕机风险,请及时关注。建议使用管理系统-智能运维-云端运维功能分析当前系统存在的性能问题。

注1:单机情况下 #clustername# 为空。

注2:webname 为变量,代表平台标题名称。

2.2.2 设置智能预警

智能预警功能默认关闭。管理员打开「智能预警」按钮,设置「预警方式」,比如勾选 短信提醒、平台消息、邮件提醒 ,设置完成后点击「保存」即可。如下图所示:

1)短信提醒

注:该功能需要开启短信平台,详细点击 短信 。

1574142200339605.jpg

2)平台信息

1574142074333350.png

3)邮件提醒

注:该功能需要配置邮件服务器,详细点击 邮箱 。

1574142136413173.png

3. 内存会话编辑

用户在数据决策系统,打开一张目录中的模板,即为一个会话。

3.1 内存会话展示值

内存会话界面包含存活会话数、内存占用比例、近 10 分钟内新增会话数、近 10 分钟内结束会话数以及结束会话选项。

  • 存活会话数:还存活的会话数量。

  • 存活会话内存占比:表示已用内存占比。

  • 近10分钟内新增会话数:字面意思。

  • 近10分钟内结束会话数:字面意思。

3.2 结束会话

支持选中会话,手动强制杀死 Session 。勾选需要结束的会话,点击「结束会话」即可。如下图所示:

注:11.0.2 及以上版本的报表工程,新增字段「最近访问时间」。

  • 模板名称:会话对应的报表模板位置和名称。

  • 开始时间:内存会话的开始时间,默认按照「开始时间」升序排列。

  • 最近访问时间:用户最新对当前session做刷新操作的时间。

  • 内存大小:该会话占用的内存。

  • 操作:用户对该会话进行的操作。

  • 用户:发起该会话的用户。

4. 智能释放编辑

4.1 报表内存智能释放

报表内存智能释放使用基于 JVM 底层原理深度开发的负载判断算法,避免对系统垃圾回收进行干预,极大提升系统负载判断的准确性和及时性。

开启「报表内存智能释放」功能后,高负载下新会话进入排队,正在计算中的会话若试图计算较大数据量停止计算,计算完成的会话若占用较大内存则被清除。

「报表内存智能释放」功能默认开启,可自定义警报提示,默认提示为「服务器压力过大,触发保护机制,请稍后刷新该页面重新访问」。

点击「保存」即可生效,如下图所示:

注:智能释放不需要用户设置各项阈值,系统根据负载状态智能地选择最合适的释放策略,保障系统稳定运行的同时,尽可能降低对用户的影响。

4.2 报表结果表内存智能释放

11.0.4 及之后版本的工程新增「报表结果表内存智能释放」功能。

报表计算出结果后,结果表和结果表中的引用对象仍然占用内存,增大内存压力。

开启「报表结果表内存智能释放」功能后,支持对分页预览模板的结果表内存优化,支持对未使用排序、分组过滤、列表过滤、折叠树功能的数据分析预览模板内存优化

「报表内存智能释放」功能默认开启,点击「保存」即可生效,如下图所示:

5. 模板限制编辑

一些模板的内部计算逻辑过于复杂,有可能造成系统宕机,需要对这些模板进行限制。

1)可限制单数据集最大行数,可限制一张模板里的最大单元格个数,可限制 SQL 的最大执行时长,可限制导入 Excel 时的最大单元格数,可限制提交的记录数,在限制了提交记录数后还可设置是否允许填报产生笛卡尔积。当达到设置的数量后,拒绝请求,并给出提示。

2)模板限制包含通用限制和部分模板单独限制两部分。

详情请参见:模板限制

6. 生命周期编辑

1)实时检测会话是否过期。

2)会话超过 x 分钟未向后台发送请求,则会被系统清除。默认值 30 分钟。

注:允许最小值 10 分钟,最大值 10000 分钟。