最近,由于网格加载缓慢,我不得不对性能问题进行故障排除。经过调查,似乎有人使用了List<Product>来填充网格。问题是,Product有很多属性,其中许多是not.lazyloads(),其中大多数甚至不需要网格。
因此,为了解决这个问题,我创建了一个名为ProductLite的新对象,它只有延迟加载,大部分关于联接的关键信息,现在性能都很好。它没有执行10,000分贝的点击,而是达到了1。
我对SO社区的问题,你是如何建模你的对象的?我认为所有对象都应该有一个“细节”和“信息”版本,因为有时需要密集的对象加载。即。ProductDetails将包含所有信息,而不是在列表中使用,而ProductInfo只会携带用于列表、快速查找等的高级信息。
是否有一个标准已经被采用作为对象建模的最佳实践?
发布于 2011-10-29 22:57:35
这里的问题是,您将域模型对象与DTO/Presentation对象混淆。
我通常不愿意将任何准则视为“最佳实践”,但以下是一些一般性建议:
batch-size设置(经验规则:使用页面大小)https://stackoverflow.com/questions/7941925
复制相似问题