首页 > 其他分享 >架构演变过程

架构演变过程

时间:2023-06-17 22:37:47浏览次数:52  
标签:调用 服务 演变 业务 独立 拆分 架构 过程


单体架构

架构演变过程_单一职责

分布式架构:业务拆分

架构演变过程_开发语言_02

微服务

分布式架构的一种。独立开发和部署,一个业务多个服务支持

特点:

  1. 单一职责:拆分粒度更小,一个服务一个业务,避免重复开发(面向对象角度来说符合最少知道原则,干相同事情的放在一起,结构清晰)
  2. 自治:团队独立(符合敏捷开发)、技术独立(各个服务可以选择不同的技术)、数据独立(可以有独立数据库(避免数据污染))、部署独立(某个服务更新了只重新部署一个服务即可)
  3. 隔离性强:服务调用做好隔离、容错、降级,避免级联问题(降低服务之间的影响范围)
  4. 面向服务:对外暴露业务接口(安全得到保障。不暴露private的方法和数据,只暴露一个public的接口让外界去调用,从安全性的角度来说,业务安全得到了保证,业务被破坏的难度增加。数据(属性)安全和业务(方法)安全)

架构演变过程_单一职责_03

架构演变过程_数据_04

架构演变过程_单一职责_05

springcloud

作用是什么?

解决拆分出现的问题,SpringCloud起到整合角色,整合了各种组件,基于springboot进行自动装配(存在版本兼容性)

架构演变过程_开发语言_06


服务拆分

原则

单一职责(订单就订单、支付就支付,不要重复开发相同开发)

特点

  • 单一职责(不重复造轮子)
  • 数据独立,不要访问其他微服务的数据库
  • 业务暴露接口,其他服务调用的时候通过接口调用

远程调用

实质:发送HTTP请求(http请求方式有哪些??)

标签:调用,服务,演变,业务,独立,拆分,架构,过程
From: https://blog.51cto.com/u_15921176/6506387

相关文章

  • Calcite sql2rel 过程
    sql2rel的过程是将SqlNode转化成RelNode的过程在SqlToRelConverterTest中添加样例测试@TestvoidtestScan(){Stringsql="SELECT*FROMEMPWHEREempno<10";sql(sql).ok();}会生成如下的relnodetree.LogicalProject(EMPNO=[$0],ENAME=[$1],JOB=[......
  • 1、Android中MVC、MVP和MVVM架构模式的区别
    架构模式为项目文件提供了模块化,并确保所有的代码在单元测试中得到覆盖。它使开发人员很容易维护软件,并在未来扩展应用程序的功能。MVC(模型-视图-控制器)、MVP(模型-视图-展示者)和MVVM(模型-视图-视图模型)是开发人员中最流行和行业公认的安卓架构模式。模型-视图-控制器(MVC)模......
  • 系统架构设计师笔记第17期: 关系数据库
    数据库的分类可以根据不同的标准进行划分:根据数据结构分类:1.1关系数据库(RelationalDatabase):关系数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据,以表格形式存储数据,并支持事务处理、多用户访问、数据安全性和完整性控制等功能。1.2非关系型数据......
  • 地理坐标系及投影坐标系的构建过程全解析
    [GIS]地理坐标系及投影坐标系的构建过程全解析_哔哩哔哩_bilibili地图坐标系快速入门之地理坐标系_哔哩哔哩_bilibili......
  • HotSpare 9361Raid卡热备盘的设置过程
    HotSpare9361Raid卡热备盘的设置过程摘要公司最近一批服务器到位(去年生产)插满24盘位的960G的SSD的超融合服务器.(硬盘是镁光的!-_-!)想着Raid6虽然数据保护比较好,但是写入是在是太垃圾了.所以想可以增加两块热备的Raid5这样的话虽然比raid6还要多损失一块960G的容......
  • 达梦数据库最新版安装过程
    达梦数据库最新版安装过程背景好久不用达梦数据库了.都是用的两年前安装好的数据库一直在跑(比较稳定,没太宕机)今天有一个新的机器,里面的达梦数据库版本实在是太低了.想着升级一下版本.本地删除重新搭建.但是没想到,两年没用全都忘记了.之前记录的文档也是各种零散.所......
  • 银河麒麟不同架构获取rpm包的方法
    银河麒麟不同架构获取rpm包的方法背景随着信创和网络安全越来越重要现阶段国产化的软硬件部署越来越多.很多时候现场有很多国产化的设备.不同架构.不同版本.还不能上网,无法获取对应的安装介质.这个时候通过一台家里的机器,下载不同版本,架构的rpm包就非常亟需这里想......
  • 任务调度系统架构设计:基于缓存的改进
    目录1.引言2.技术原理及概念2.2.技术原理介绍3.实现步骤与流程4.示例与应用5.优化与改进随着互联网和信息技术的不断发展,任务调度系统已经成为了企业和个人使用的重要工具。一个高效的任务调度系统可以提高生产效率,降低人工成本,优化工作流程,提高企业竞争力。然而,传统的任务......
  • 操作系统架构设计:如何优化系统性能和资源利用率
    目录1.引言2.技术原理及概念2.1.基本概念解释2.2.技术原理介绍3.实现步骤与流程3.1.准备工作:环境配置与依赖安装3.2.核心模块实现3.3.集成与测试操作系统架构设计:如何优化系统性能和资源利用率随着计算机硬件性能的不断提高和软件功能的不断扩展,操作系统在系统性能、资......
  • 在 Windows 下部署 ChatGLM-6B 过程记录
    1、为git安装lfs模块下载模型文件前,需要安装gitlfs模块以支持大文件的下载。下载地址:https://git-lfs.com/验证:gitlfsinstall2、下载模型文件gitclonehttps://huggingface.co/THUDM/chatglm-6b-int43、......