数据加载量太大,页面很卡

guoyang842 2011-09-08 02:45:20
我的项目很蛋痛,是个游戏的报表,用的是s2sh架构
js用的extjs,不知道是不是这个extjs的原因,本身加载量也很大,
在页面显示的时候有49行 ,200列 从后台穿过来的值是list<Map<String,String>>类型的
Extjs 会根据map的名称自动匹配
可是 做出来会很卡,就比如里面有一个时间选择器,点击一下5秒钟才又反映,

我再后台停留的时间我查看了,只是一瞬间,得出问题就在于加载量太大,页面不堪负荷


请问有没有提高页面速度和效率的方法(如分次加载啊什么的),不要说分页,因为纵行和横行都是固定的,不是读取的,而且需求人员也不想要分页,



希望大家提供思路,或者方法
...全文
811 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
teemai 2011-09-09
  • 打赏
  • 举报
回复
extjs的问题。
beiouwolf 2011-09-09
  • 打赏
  • 举报
回复
ext太重量级了
还是easyui这种用起来舒服
guoyang842 2011-09-09
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 wsm106 的回复:]

个人感觉是ext 解析 list<map> 生成table的时候耗时太多,试试其他方法,木有用过ext~~~

其实感觉ext的界面也不是那么好看,找个好点的美工一样可以做的很好看
[/Quote]

关键是没有页面美工,我们游戏公司
guoyang842 2011-09-09
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 lunvsxiao 的回复:]

真的有什么显示是必须要200列么...
有人会看么

在下愚见
[/Quote]
运维和副总裁都要看
一板砖夯死你 2011-09-09
  • 打赏
  • 举报
回复
个人感觉是ext 解析 list<map> 生成table的时候耗时太多,试试其他方法,木有用过ext~~~

其实感觉ext的界面也不是那么好看,找个好点的美工一样可以做的很好看
骨_头 2011-09-09
  • 打赏
  • 举报
回复
真的有什么显示是必须要200列么...
有人会看么

在下愚见
唐三角 2011-09-09
  • 打赏
  • 举报
回复
多半是javascript & extjs 的执行效率问题。
你最好用不同的浏览器,不同的js引擎测试一下速度,定位一下问题。

你可能要面临 自制extjs的高效率插件 或者 放弃extjs渲染。

ajax 也可以考虑,分页是逻辑实现,不分页是视觉效果,网页的 上下 左右 滚屏 一样可以 进行异步数据分批加载:)
guoyang842 2011-09-09
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 bijanen19861113 的回复:]

200列..牛叉啊,这个还估计还真的是页面加载数据的时候花的时间问题,没整过。页面分页应该有一定的效果吧。数据量太大本身传输的时候就话很多时间,再花时间填充..所以很慢
[/Quote]

加载完,点里面的选项,文本框 都会卡的
bijanen19861113 2011-09-09
  • 打赏
  • 举报
回复
200列..牛叉啊,这个还估计还真的是页面加载数据的时候花的时间问题,没整过。页面分页应该有一定的效果吧。数据量太大本身传输的时候就话很多时间,再花时间填充..所以很慢
niuniu20008 2011-09-08
  • 打赏
  • 举报
回复
200列,这个真无能为力啊。
guoyang842 2011-09-08
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 hwl1985 的回复:]

extjs 也可以自己写html 简化生产的源码 这样ie打开就快了
extjs 做做一般的修改保存撒的可以 数据结果显示 要它干么??
[/Quote]

美观
hwl1985 2011-09-08
  • 打赏
  • 举报
回复
extjs 也可以自己写html 简化生产的源码 这样ie打开就快了
extjs 做做一般的修改保存撒的可以 数据结果显示 要它干么??
guoyang842 2011-09-08
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 zengxianjunccccccccc 的回复:]

写个action的测试方法在(action层的)看需要多长时间,
你的数据结构要可以改为抽象出一个类不用那个map,数据旁大时你的硬件状态,可以使用静态化。
[/Quote]

木有办法extjs就是这么蛋痛,每列标题根据map里面的名字对应标题id,list 控制行 map控制列,测试是在方法前些System.currenSystemTime 然后在后面也写个嘛,还有其他测试方法吗,老是0秒 我怀疑不是这么测试的
仙人长 2011-09-08
  • 打赏
  • 举报
回复
写个action的测试方法在(action层的)看需要多长时间,
你的数据结构要可以改为抽象出一个类不用那个map,数据旁大时你的硬件状态,可以使用静态化。
guoyang842 2011-09-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 l646335072 的回复:]

可以采用数据库分页啊,不是页面分页啊,让它每次只加载一部分数据啊
[/Quote]

不是数据多的问题,里面的数据查出来就几十个而已,
有时候甚至只显示了2行3列 的数据,但是html都要生成49行 200列,这是为了方便运维查看
行和列都是固定的,行有49 列200 固定显示,哎

guoyang842 2011-09-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wangquanzheng 的回复:]

ext的影响还是很小的,主要是sql还有代码的优化

祝楼主好运
[/Quote]

测试sql只用了10行数据,所以sql优化的话 还是不考虑了
l646335072 2011-09-08
  • 打赏
  • 举报
回复
可以采用数据库分页啊,不是页面分页啊,让它每次只加载一部分数据啊
yanwen0206 2011-09-08
  • 打赏
  • 举报
回复
直接不在页面显示 以一个excel的形式下载到外面呢?
guoyang842 2011-09-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sasdas_noman 的回复:]
ext本身就很臃肿...加载慢,但是如果你的代码写的不好,也可以造成加载慢,优化代码吧!
[/Quote]

不是代码的原因,上面已经说明 大家不要在纠结于代码问题了,本身数据量大 里面都只用了一个循环,其余的都是extjs自带的 不存在优化代码问题
重点是生成的html量太大:

softroad 2011-09-08
  • 打赏
  • 举报
回复
就是数据量太大了,要不你把数据写死试试。ie打开也得一会。
加载更多回复(3)

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧