js实现FineDirect大屏刷新

我是社区第99661位番薯,欢迎点我头像关注我哦~
定时刷新测试报告

1 测试目的
为了解BI4.1对秒级定时刷新的支持,本报告针对BI4.1进行测试。  

2系统环境
2.1服务器配置
应用服务器
硬件
CPUIntel(R) Core(TM) [size=10.5000pt]i5-4210U CPU @ 1.70GHz
内存:8G
硬盘:HDD
软件
系统:Win10专业版x64
应用软件:FineBI 4.1
数据库服务器
硬件
CPUAMD Ryzen 7 1700X Eight-Core Processor
内存:[size=10.5000pt]8[size=10.5000pt]G
硬盘:HDD
软件
系统:Centos 7
数据库:MySQL
2.2应用配置
FineBI 版本
4.1版本 2018.03.24
jvm内存
4G
直连相关配置
缓存时间1s(修改%\webapps\WebReport\WEB-INF\resources\direct\之下的system.properties 配置文件,将cacheSeconds的值修改为1[size=10.5000pt])
定时刷新时间
每隔[size=10.5000pt]5s进行一次刷新
测试持续时间
8小时
2.3数据环境
所用测试表数据量如下:
表名
数据量
销售明细
8个字段   50万条数据
3测试内容3.1 测试内容
本次测试1个模板的定时刷新操作,在秒级刷新情况下的支持。
3.1.1 场景- 多组件模板的秒级刷新
主要测试功能点
多组件模板的秒级刷新
组件
分组表:行表头2个、指标3
明细表:8
柱状图:分类1个、指标2
数据
销售明细(50w
截图201807160924288557.png [size=10.5000pt]
4定时刷新配置4.1 文件配置
FineBIFineBI\webapps\WebReport\WEB-INF\lib下找到fr-bi-server-4.1.jar包,然后使用压缩工具打开(直接打开,无须解压),找到下图中的direct_show.html文件。
截图201807160929003879.png
file:///C:\Users\Administrator\AppData\Local\Temp\ksohtml\wpsA12C.tmp.jpg
拷贝该文件到电脑桌面,用记事本增加红框中的内容,调用refresh.js,修改完毕将该direct_show.html替换至原路径覆盖即可。
截图201807160929145788.png
file:///C:\Users\Administrator\AppData\Local\Temp\ksohtml\wpsA13C.tmp.jpg

1. <!-- 增加刷新功能 -->
2.     <script type="text/javascript" src="/WebReport/refresh.js"></script>
截图201807160929309971.png
file:///C:\Users\Administrator\AppData\Local\Temp\ksohtml\wpsA14D.tmp.jpg
默认隐藏掉上方的工具栏
将refresh.js放到FineBI\webapps\WebReport目录下
截图201807160929439576.png
file:///C:\Users\Administrator\AppData\Local\Temp\ksohtml\wpsA14E.tmp.jpg
模板id通过模板url获取,localhost:37799/WebReport/ReportServer?op=fr_bi&cmd=bi_init&id=120&createBy=-999   中的id=120  120即为模板id
刷新间隔:单位为ms

1. setTimeout(function () {
2.     if (Data.SharingPool.get("reportId") === 120) {
3.         setInterval(function () {
4.             Data.SharingPool.put("control_filters", BI.Utils.getControlCalculations());
5.             BI.Utils.broadcastAllWidgets2Refresh(true);
6.         }, 5000);
7.     }
8. }, 2000);
5测试结果5.1 后台日志
截图201807160930084528.png
file:///C:\Users\Administrator\AppData\Local\Temp\ksohtml\wpsA15F.tmp.jpg
file:///C:\Users\Administrator\AppData\Local\Temp\ksohtml\wpsA160.tmp.jpg
三个组件每隔5s向数据库发送SQL

5.2 测试结果
持续8小时的测试过程中,模板内组件数据每隔5s刷新,BI工程稳定运行。

编辑于 2018-7-16 09:33  

发表于 2017-12-27 19:20:55
大佬666
发表于 2017-12-28 08:41:24
发表于 2017-12-28 10:03:15
等了半天没看到图
发表于 2017-12-28 10:08:53
截图201712281008494637.png
发表于 2017-12-28 10:09:21
好望角 发表于 2017-12-28 10:03
等了半天没看到图

见楼下截图。。。
发表于 2018-2-2 12:06:42
截图显示不出来,楼主哪里去了?
发表于 2018-2-2 12:38:39
@传说哥 帖子图片加载不出来了,这么多人反馈,看一下是什么原因吧
发表于 2018-2-2 16:27:30
alu 发表于 2018-2-2 12:06
截图显示不出来,楼主哪里去了?

这是楼主回复你的
setTimeout(function () {
        if (Data.SharingPool.get("reportId") === 120) {
                setInterval(function () {
                        Data.SharingPool.put("control_filters", BI.Utils.getControlCalculations());
                        BI.Utils.broadcastAllWidgets2Refresh(true);
                }, 3000);
        }
}, 2000);
发表于 2018-2-2 20:57:30
三、配置完成,校验
添加成功之后,查看网页源代码判断js是否加载成功:

JS没有添加成功,显示如下,不知原因,请楼主不吝指教啊:
编辑于 2018-2-2 20:58  
发表于 2018-2-2 20:59:36
cherishdqy 发表于 2018-2-2 16:27
这是楼主回复你的
setTimeout(function () {
        if (Data.SharingPool.get("reportId") === 120)  ...

多谢热心解答!
发表于 2018-3-5 17:05:30
alu 发表于 2018-2-2 20:59
多谢热心解答!

如果是使用FineDirect,需要注意以下两点:
1、找到fr-bi-server-4.1.jar\\com\\fr\\bi\\web\\html\direct\中的direct_show.html文件,修改后然后拖入jar包中才可以;
2、在system.properties 配置文件中把参数cacheSeconds设置为1
配置文件路径:%\webapps\WebReport\WEB-INF\resources\direct\  之下的system.properties 配置文件。

发表于 2018-5-10 09:30:47
你好,大神,请问用FR和FineBI开发大屏各有什么优势和劣势呢?
发表于 2018-6-28 09:41:05
refresh.js  下载需要账号啊,怎么申请?
发表于 2018-7-4 18:06:34
alu 发表于 2018-3-5 17:05
如果是使用FineDirect,需要注意以下两点:
1、找到fr-bi-server-4.1.jar\\com\\fr\\bi\\web\\html\dire ...

老哥,能具体点吗
发表于 2018-7-31 14:20:43
数据量好大,要花点时间才能吸收
发表于 2018-8-28 10:39:31
楼主,看过来,看过来,按照上面做,我的JS也不能添加成功。楼主,我需要你
发表于 2018-11-13 22:14:38
后台有这个日志,但前端没有刷新:
截图201811132214212634.png
发表于 2019-2-21 18:03:32
我想问 大屏在全屏的情况下  这种刷新 会退回来么?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

44回帖数 1关注人数 18435浏览人数
最后回复于:2019-2-21 18:03

返回顶部 返回列表