#软件架构##微服务##模型##软件开发#
当你逐渐深入软件工程世界后,迟早有一天会涉及到软件架构模式的问题。
作为软件工程师,为什么要学习基础的架构模型?
首先,了解架构模型的知识,这是成为架构师的基础要求。
其次,了解架构模型有助于在编写代码中做出决策。比如,需要设计基于微服务的应用,我们就需要将现有复杂的服务解耦成很多的单一服务。
有没有通俗易懂,不必过于详细而太混乱的介绍架构模式的文章呢?
正好,以下就介绍5种架构模型。
1.分层架构
分层架构是单体应用最常见的架构。该架构背后的基本思想是将应用程序逻辑分为几层,每一层都封装特定的功能。例如,持久层将负责程序与数据库的通信。
图一 分层架构
2.事件驱动架构
事件驱动架构的想法是将应用程序解耦为异步接收和单个处理事件组件的模型。事件驱动架构是分布式异步架构模式的一种流行模式,并以高可扩展性和适应性著称。
图二 事件驱动架构
3. 微内核架构
微内核架构,也称为插件架构,其具有两个主要组件:核心系统和插件模块(或扩展)。最佳例子就是 页浏览器(核心系统),你可以在它上面安装你喜欢的扩展(或插件)。
图三 微内核架构
4. 微服务架构
微服务架构由单独部署的服务组成,理想情况下,每个服务都具有单一的功能。这些服务相互独立,如果一项服务失败,其他服务不会停止运行。
图四 微服务架构
5. 空间架构
基于空间架构的主要思想是分布式共享内存,以减轻频繁访问数据库的问题。假如通过使用内存处理大量数据,可以避免许多额外数据库操作,也可规避一些将来未知的错误。
空间架构的基本做法是将应用程序分成多个处理单元(可以根据需要自动向上和向下扩展),其中数据将在这些单元之间复制和处理,而无需持久化到中央数据库的操作。
图五 空间架构
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!