【发布时间】:2010-11-10 05:33:12
【问题描述】:
在我当前的项目中,业务逻辑是在存储过程(其中有 1000 多个)中实现的,现在他们希望随着业务的增长对其进行扩展。架构师已决定将业务逻辑移至应用层 (.net) 以提高性能和可扩展性。但他们并没有重新设计/重写任何东西。简而言之,从 SP 触发的相同 SQL 查询将从使用 ADO.Net 的 .net 函数触发。这如何产生任何性能?
据我所知,当我们需要独立于 DB 或某些业务逻辑可以用 OOP 语言而不是 RDBMS 引擎更好地实现时(例如遍历层次结构或一些图像处理等)。其余的情况,如果没有复杂的业务逻辑需要实现,我认为还是把业务逻辑放在DB本身比较好,这样至少可以避免应用层和DB之间的网络延迟。
请让我知道你的看法。我是一名开发人员,在考虑一些架构决策时有点犹豫,请原谅我对这个主题的无知。
【问题讨论】:
-
你是说他们将存储过程中的业务逻辑转移到动态 SQL 中的业务逻辑?
-
动态 SQL?不,他们正在将其移至 .Net 应用层。
标签: performance architecture business-logic