我们正在为新的内部应用程序建立新的框架和业务方式.我们当前的设计规定所有安全逻辑都应由我们的数据库处理,所有信息(我的意思是所有信息)都将通过存储过程进出数据库.
理论上,数据访问层从存储过程请求信息并将认证传递给数据库.数据库确定用户的角色/权限,并决定是否执行任务(无论是检索数据还是进行更新).
我想这意味着更少的数据库事务.一次调用数据库.如果安全性在我们的数据访问层中,则需要1个数据库调用来确定用户是否具有适当的权限,然后单独的数据库调用来执行操作.
举个例子,我发现SQL Management studio完全缺乏IDE.我主要担心的是,我们最终必须在存储过程中维护一些讨厌的业务逻辑,以获得非常小的性能提升.
现在,我们正在为我们的ORM使用LINQ.它似乎轻快,但最重要的是,它很容易快速发展.
维护成本是否值得性能提升?我们是否在愚弄自己,以为甚至会有明显的性能提升?或者我们只是为自己制造噩梦?
我们的环境:
内部非关键业务应用程序
C#/ ASP.NET 3.5
Windows 2003
MS SQL Server 2005
35个中型网络应用程序,约有500名用户
Marcio Aguia.. 8
不要那样做.当"数据库大师"决定去另一家公司时,我们最近遇到了非常糟糕的经历.维护程序中的所有逻辑真是太可怕了!!
是的,你会有一些性能提升,但这不值得.事实上,性能在内部应用中甚至不是一个大问题.在优质服务器上投入更多资金.它会得到回报.
不要那样做.当"数据库大师"决定去另一家公司时,我们最近遇到了非常糟糕的经历.维护程序中的所有逻辑真是太可怕了!!
是的,你会有一些性能提升,但这不值得.事实上,性能在内部应用中甚至不是一个大问题.在优质服务器上投入更多资金.它会得到回报.