2009-01-21 25 views

回答

1

您可以看看Apache Wicket列表组件如何解决此问题。

很少想显示大列表的全部内容。在某个时刻只有一个页面,并且链接到结果集中的其他页面。

当你调用WS运行查询第一次,返回所有的ID和子表的记录将被首先显示客户端上的列表。您可以使用ID列表的大小来创建页面链接。

在客户端上,您可以使用ID列表来构建其他页面的请求。

如果你使用一些会话管理则ID列表可以存储在服务器请求一个页面上只能有每页记录的页码和数量。

1

哦~~ ....我们未这样做在这里工作,由于性能问题,那说,这是一个CRM应用类型和获得的从线开宗列表的业务应用程序不得不返回下3秒。我们直接敲击了数据库。

所以我想这就是答案是什么类型的离应用程序,它是用户参与?

如果它的系统与系统 - 我们有那些 - 关闭名单的情况下 - 的BizTalk orchestred。然后,它只是availble的系统资源 - 所以我们定的下班时间,以确保这两个用户组

1

个人而言,我不认为它有所有的东西做的一种应用本身的性能没有(尽管肯定面向用户的应用程序将具有不同于机器间应用程序的需求,并且一些面向用户的应用程序将比其他应用程序容忍更多的优雅);真正的问题是,将数据提供给客户端的最佳方式是什么?这个答案总是会有一些变化,“嗯,这取决于”。就我而言,对于面向公众的面向用户的应用程序,一般来说,“大列表”应避免或至少避开,并不是因为它们天生就是邪恶的,而是因为它们可能会影响用户体验(客户端应用程序在检索或处理大型数据集时可能会挂起),但它们不能很好地扩展(如果您的主页通过网络为每个请求推送了大量的SOAP-encrusted内容,服务器缓存的或不是,随着流量的增加,你会遇到麻烦)等等。根据项目的进展情况,您可能会发现需要重写以支持增加的负载或增强滞后性能或响应能力,这对于面向服务的应用程序来说可能是一项重大且不太有趣的工作。

这就是说,我还以这种方式写了很多我自己的服务层,在响应性对我来说不是很重要的项目(例如个人项目)中,或者当我并不真正期望那么多时负载,因为他们很快开发,部署和维护。用户的确接受了创业热潮,但是这种热潮也可以通过良好的设计来掩盖,并且在客户端拥有大量的数据,尤其是在不经常更改的情况下,可以很方便。

所以很难说这样或那样;有时候很好,有时候不会 - “这要看情况。“如果不了解更多关于您的特定要求的信息,我可能会建议您继续使用大清单锤子,使用真实(或接近真实)的数据编码,进行一些测量,推断它们,你可能会发现没有什么可担心的,最后一件事情就是陷入不必要的复杂设计中,因为StackOverflow上的一群人告诉你“大列表不好”。)

相关问题