高并发系统设计一-架构分层

随着业务越来越复杂,大量的代码纠缠在一起,会出现逻辑不清晰、各模块相互依赖、代码扩展性差、改动一处就牵一发而动全身等问题

1、常见的分层

1.1、MVC

将用户视图和业务处理隔离开,并且通过控制器连接起来,很好的实现了表现和逻辑的解耦。

1.2、另一种分层

  • 表现层,顾名思义嘛,就是展示数据结果和接受用户指令的,是最靠近用户的一层
  • 逻辑层里面有复杂业务的具体实现
  • 数据访问层则是主要处理和存储之间的交互。

1.3 其他分层思想

OSI 网络模型,分为 7 层,从下到上:物理层、数据链路层、网络层、传输层、会话层、表现层、应用层。

TCP/IP 协议,它把网络简化成了四层,即链路层、网络层、传输层和应用层

2、分层有什么好处?

  • 分层的设计可以简化系统设计,让不同的人专注做某一层次的事情。
  • 分层之后可以做到很高的复用
  • 分层架构可以让我们更容易做横向扩展
  • 单一职责原则规定每个类只有单一的功能,在这里可以引申为每一层拥有单一职责,且层与层之间边界清晰;

  • 迪米特法则原意是一个对象应当对其它对象有尽可能少的了解,在分层架构的体现是数据的交互不能跨层,只能在相邻层之间进行;

  • 而开闭原则要求软件对扩展开放,对修改关闭。它的含义其实就是将抽象层和实现层分离,抽象层是对实现层共有特征的归纳总结,不可以修改,但是具体的实现是可以无限扩展,随意替换的。

发布了57 篇原创文章 · 获赞 3 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/wmdkanh/article/details/105442049