选择你的分层策略(完)
如果是逻辑分层,相互交互的层将会部署到同一个物理级上并且在同一个进程中运行,这样你就可以充分利用高性能的交互机制,比如通过组件接口直接调用。然而,为了维护逻辑分层的优点和将来的可适应性,你必须小心地维护层间的封装和松耦合。
对那些逻辑层被部署到分离的物理级上的情况,相邻层间的通信将经由链接的网络发生,并且你必须确保你选择的设计能支持通信延时,且是松散耦合的。
决定你应用系统的哪些层被部署到分离的物理级上,哪些被部署到同一物理级上也是你分层策略中一个重要部分。为了维护可适应性,总是要确保层间的交互是松散耦合的。这将使你能够利用将层部署到同一级上时具有高性能,同时也允许你在需要时将这些层部署到多个级上去。
采用分层的方式会带来一些复杂性,且可能会增加初始开发过程的时间,但是如果实现得正确,这将会显著地增加你应用系统的可维护性,可扩展性和可适应性。你必须权衡层的可重用性和松散耦合同它带来的性能影响和复杂度的增加。仔细地考虑你的用系统如何分层,以及层间如何交互将会确保性能开销和可适应性间有一个很好的平衡。通常,分层设计在可适应性和可维护性方面带来的好处会远超过不使用分层的紧耦合设计带来的些许性能上的改进。