分布式应用程序由三个主要逻辑部分构成:表示逻辑、业务逻辑和数据源逻辑。
设计任何应用程序的首要之处是将应用程序的各个部分逻辑划分为不同的层次,不能将不同部分的逻辑混在一起,层与层之间只能通过良好定义的接口与另一层交互。分布式设计要遵顼五个原则:保守分布;本地化相关内容;使用 Chunky 接口,而不是 Chatty 接口;优先选用无状态对象,而不是有状态对象;接口编程,而不是具体实现的编程。
可伸缩性用于测量当像系统中增加资源时的性能改善。伸缩方式有两中:垂直伸缩和水平伸缩。
Tip:一些短期内的优化看起来很好,但是从长远来看可能会削弱可伸缩性。例如在 ASP.NET 中会使用会话对象来换从每个用户信息,这对于单台服务器的应用来说无疑是一个很好的优化,但是如果应用的服务器数量扩展到了多态,那么这个方法就无法保证不会出现问题,并且这个办法也违反了优先使用无状态对象的原则。
?
原文:https://blog.51cto.com/u_11739124/2997880