SmartClient的等待时间如何扩展到数千名用户编辑网格?
在ExtJS不适合之前,我收到了警告。
答案 0 :(得分:5)
SmartClient具有单个网格组件,可以同时执行水平和垂直增量渲染,因此它可以处理非常大量的行(数百万)和列(数百个)而不会降低性能。
此单个高数据量网格组件支持SmartClient支持的所有网格功能 - 内联编辑,分组,过滤,动态冻结列,排序,重新排序字段,拖放...(列表太长)
许多用户遇到了Ext网格组件的可伸缩性问题,并在SmartClient论坛上进行了讨论:
http://forums.smartclient.com/showthread.php?t=2678
就服务器的可扩展性而言,实际上网格组件对服务器端可扩展性做出了巨大贡献。考虑SmartClient网格的自适应过滤机制:
http://www.smartclient.com/index.jsp#adaptiveFilter
此功能和相关的“自适应排序”功能减少了60-90%最昂贵的服务器命中类型(即访问和过滤/排序大型数据集的那些)。
SmartClient普遍采用这种智能重用数据的方法,以避免昂贵的服务器端操作。 ResultSet类文档中提供了一个很好的概述; ResultSet用作处理SmartClient中数据集的所有组件的缓存管理对象:
http://www.smartclient.com/docs/9.0/a/b/c/go.html#class..ResultSet
答案 1 :(得分:4)
编辑网格的用户数量并不真正相关 - 这更像是一个关于应用程序如何支持加载的问题。如果您询问与网格组件本身相关的性能,最相关的问题是关于网格的功能以及它可以处理多少数据,而不是随着时间的推移将有多少用户使用它。
我不熟悉SmartClient,但在Ext的情况下,网格对于中小型网格数据表现非常好(非常接近,每页最多约50行,最多约10列数据) 。显然这完全取决于很多变量,但Ext的网格渲染时间与一次渲染的数据量成正比增长是正确的。这是因为它在封面下使用了相当繁重的DOM,权衡是开箱即用的rich feature set以及为创建自定义嵌套行布局而提供的灵活性。它确实支持分页以缓解性能问题,并且还有一个非常流行的extension提供按需行加载(虚拟滚动),可以实现更高性能的大型数据集加载。在Ext示例中还有一个example轻量级和更简单的缓冲加载版本,它显示了大量数据的出色性能。
此外,根据您的需要,3.0中有一个新的轻量级ListView组件。它不支持所有GridView的功能,但如果您主要需要一个仅显示网格,它可能是一个很好的选择。
所有这些并不是说SmartClient不好 - 我不知道。我只是希望任何看过这个帖子的人在方程式的Ext方面做出明智的决定,因为听起来你已经收到了片面的意见。
答案 2 :(得分:0)
谢谢你的回答。我一直认为,当他面对漫长的加载时间时,平均而且乔进入一个使用Ext的网站时会感到沮丧,如果有很多人使用该网站,也会增加。 这就是为什么我认为SmartClient会更好但我没有找到它们之间的任何比较的原因。也许我无视ExtJS而仓促。
我希望与有SmartClient经验的人联系,以协助开发我未来的网站。 谢谢 Jez的