注意:当我提到tier时,我的意思是物理层.本网站上有关"层级"的许多问题都是指逻辑层,这不是我所要求的.
我正在使用标准的"3层"架构设计应用程序,包括演示,业务逻辑(BLL)和数据访问(DAL)层.该技术是WPF,C#,LINQ和SQL Server 2008.我的问题涉及这个应用程序的物理架构.
我可以将BLL/DAL放在一个标准的DLL中,该DLL在用户机器上加载并运行,形成一个2层架构 - 客户端机器和数据库服务器.但是将BLL/DAL转换为位于应用服务器上并从用户机器调用的WCF服务并不困难.这将给我一个3层架构 - 客户端机器,应用服务器和数据库服务器.
我的问题是 - 使用3层架构有什么好处?我经常被告知3层增加了可扩展性,但对我来说并不是很明显为什么会这样.当然,你要用同样的数据来打击性能,必须通过线路进行两次跳 - 从数据库服务器到应用服务器,然后从应用服务器到客户端机器.
我很感激有经验的建筑师和开发人员的建议.