CSLA.NET框架的性能

时间:2012-05-22 13:07:56

标签: .net c#-4.0 business-logic csla data-layers

我们的系统使用基于实体框架的数据层。最近几个月,我们一直在使用EF生成的实体进行数据传输,业务逻辑和UI。

由于我们的应用程序越来越大,我们决定创建一个单独的业务层,我们使用CSLA.NET Framework来帮助我们做到这一点。当我们系统的负载增加时,这应该可以帮助我们“扩展”。

我们正处于编写新BL的中间位置,我一直在比较应用程序模块在迁移它们之前和之后使用新BL的性能。 我注意到性能差了近50倍!这不是50%,而是慢了50倍。

我知道引入BL会因为额外的层而增加一些延迟等等,但我并不认为延迟会达到如此程度。

这是正常的吗?是否有任何标准可以在可接受的引入延迟(因为增加的层)和“我们失去的比我们可以获得的更多”之间画一条线

感谢。

1 个答案:

答案 0 :(得分:3)

我不希望事情变得那么缓慢,但是根据经验......我的小组在过去的一年里开始使用CSLA(v4),并且在加载更大的数据列表时我们做的第一个应用程序之一变得非常慢。列表的存储过程在一秒钟内返回,但业务对象Data Portal方法需要10秒以上才能返回。在我们的特定情况下,问题最终是我们正在实例化一个WCF事件提供程序类,因为每个记录都被加载到列表对象中。一旦我们意识到并解决了这个问题,性能就非常敏捷。

所以 - 我不希望你提到使用CSLA成为滞后的原因,但是以错误的方式使用它(就像我在做的那样)很容易引起问题。