架构的相关概念

简介: 同一个业务,部署在多个服务器上(不同的服务器运行同样的代码,干同一件事)

近期在学习相关架构设计的过程中,遇到很多知识,受益匪浅。以前总是闭门造车,没有接收额外的吸收,导致工作时输出的知识和经验总是很匮乏,简单的做个汇总,后续将会花更多精力多学习更多知识。

不积跬步,无以至千里。
不积小流,无以成江海。

集群

同一个业务,部署在多个服务器上(不同的服务器运行同样的代码,干同一件事)

  • 优点

    • 多台机子可处理业务,分担压力
    • 其中任何一台机子出问题,还有其他机子可使用

分布式

一个业务分拆多个子业务,部署在不同的服务器上(不同的服务器,运行不同的代码,为了同一个目的)
组件之间彼此进行交互以实现一个共同的目标

  • 优点

    • 模块间各自独立,便于扩展,复用性高
    • 高吞吐量

分布式集群

分布式和集群的结合

微服务

业务系统彻底的组件化和服务化

SOA

Service-Oriented Architecture面向服务架构

  • 一种服务
  • 一种粗粒度,松耦合服务架构
  • 通过简单,精确定义接口进行通讯,不涉及底层编程接口和通讯模型

软件架构设计原则

在coding时,我们经常要去思考如果去实现一种可以更大的方式去兼容未来的变化,等等,所以经常会通过这五大原则的方向去思考

开闭原则

  • 定义:对扩展开发、对修改关闭
  • 解决问题:实现热插拔,解耦方式
  • 实现:接口、抽象

里氏替换原则

  • 定义:子类是父类的具体,父类是抽象
  • 解决问题:解释抽象化的具体原则
  • 实现:继承、抽象

依赖倒转原则

  • 定义:面向接口编程。依赖抽象不依赖具体
  • 解决问题:易于拓展
  • 实现:接口编程时类型使用基类,而不使用具体实现的子类

接口隔离原则

  • 定义:使用多个隔离接口,比使用单个接口要好
  • 解决问题:降低耦合
  • 实现:封装接口的时候,尽量用不同接口解决不同问题,尽量不要合用一个接口
目录
相关文章
|
3月前
|
缓存 前端开发 JavaScript
第三章(概念篇) 微前端架构模式
第三章(概念篇) 微前端架构模式
|
3月前
|
缓存 自然语言处理 前端开发
第一章 引言-HTTP协议基础概念和前后端分离架构请求交互概述
第一章 引言-HTTP协议基础概念和前后端分离架构请求交互概述
|
26天前
|
JSON Go C++
开发与运维C++问题之在iLogtail新架构中在C++主程序中新增插件的概念如何解决
开发与运维C++问题之在iLogtail新架构中在C++主程序中新增插件的概念如何解决
29 1
|
2月前
|
Java 数据库连接 Spring
Spring底层架构核心概念总结
Spring底层架构核心概念总结
|
29天前
|
BI API 容器
数据架构问题之BI的早期概念是什么
数据架构问题之BI的早期概念是什么
|
2月前
|
存储 算法 C语言
【链表专题】深入探索链表:文章索引与知识架构(链表的概念、实现、应用、经典例题大合集)
【链表专题】深入探索链表:文章索引与知识架构(链表的概念、实现、应用、经典例题大合集)
|
1月前
|
监控 Java API
Java面试题:解释微服务架构的概念及其优缺点,讨论微服务拆分的原则。
Java面试题:解释微服务架构的概念及其优缺点,讨论微服务拆分的原则。
48 0
|
2月前
|
监控 持续交付 API
微服务架构:从概念到实践
【6月更文挑战第10天】微服务架构将大型应用拆分为独立小服务,每个服务运行在独立进程中,通过轻量级通信协作。其特点是模块化、可伸缩、灵活且容错性好。优势包括提高开发效率、降低系统复杂性、便于技术选型和提升系统可用性。实践中,涉及业务拆分、服务通信、治理、自动化部署及数据一致性管理。这种架构模式为企业应对复杂业务需求提供了有效解决方案。
|
2月前
|
消息中间件 数据采集 分布式计算
离线数仓(一)【数仓概念、需求架构】
离线数仓(一)【数仓概念、需求架构】
|
2月前
|
存储 小程序 云计算
云计算概念与架构设计介绍
云计算概念与架构设计介绍