当前位置: 首页 > news >正文

分布式技术栈、微服务架构 区分

1.分布式技术栈

这些技术栈都是为了更好的开发分布式架构的项目
(大营销平台的系统框架如下图,扩展的分布式技术栈)
在这里插入图片描述

(1)Dubbo——分布式技术栈

Dubbo+Nacos注册中心是应用可以分布式部署,并且提供RPC接口

(2)Zookeeper——分布式技术栈

动态配置,通过动态配置对熔断限流进行操作

(3)任务调度xxxl-job——分布式技术栈

(4)ES——分布式技术栈

数据同步——分布式技术栈
分库、分表——分布式技术栈
因为分库分表了,所以引入阿里云的cana框架将数据同步到Elasticsearch(ES)进行聚合查询。

(5)RPC——分布式技术栈

Http,RPC都是接口间的通信方式
分布式系统的通信解决方案,基于Socket通信。

将A扩容,分布式部署,来满足流量,提高系统承载量
A提供RPC服务,B调用A提供的RPC服务。
RPC的调用需要对外提供一个接口描述。

Http, RPC区别

在这里插入图片描述
(上图描述:前台系统调用前台系统、交易系统、支付系统等,这每一个都是一个微服务)
简单架构
当使用Http接口通信,使用Nginx负载将a,b,c这些应用负载到应用A上去(就是使用Nignx提供服务)。

在这里插入图片描述
对于大型应用
使用RPC,有个注册中心nacos,将应用a,b,c注册到nacos中。

2.微服务架构

微服务是对系统拆分的方式

(1)MVC——微服务架构

在这里插入图片描述

(2)DDD——微服务架构

(Domain-Driven Design 领域驱动设计)
DDD与MVC同属微服务架构
是由Eric Evans最先提出,目的是对软件所涉及到的领域进行建模,以应对系统规模过大时引起的软件复杂性的问题。

MVC, DDD区别

在这里插入图片描述
也就是说,这些domainA里的这些对象都是用于服务自己的领域,不会去服务其他领域。
而MVC里聚集着各种不同业务的对象。

名词总结:

在代码发那个面这一整 个Project:叫做工程
业务:比如抽奖、添加购物车、删除购物车
系统(应用):整个外卖平台、营销平台。有的时候也分开把每个微服务叫系统比如前台系统、交易系统、支付系统等
微服务:一套商城内,商品、支付、发货、结算、营销(抽奖、优惠券)每一个是一套微服务,来构成整个商城。

http://www.lryc.cn/news/398427.html

相关文章:

  • 【JavaEE精炼宝库】文件操作(2)——文件内容读写 | IO流
  • C++ 指针变量做参数传递时的情况分析
  • Linux环境下Oracle 11g的离线安装与配置历程
  • 上位机图像处理和嵌入式模块部署(mcu项目2:串口日志记录器)
  • 容器是线程不安全的,如果多线程下不加锁直接使用容器会发什么
  • 配置光源——笔记
  • Java---SpringBoot详解一
  • MFC扩展库BCGControlBar Pro v35.0 - 可视化管理主题等全新升级
  • Springboot 配置 log4j2 时的注意事项
  • 微服务-初级篇
  • 批量制作word表格
  • 代码随想录算法训练营:27/60
  • Redis 中String类型操作命令(命令演示,时间复杂度,返回值,注意事项)
  • 2024亚太杯中文赛B题洪水灾害的数据分析与预测原创论文分享
  • Oracle 19c 统一审计表清理
  • PostgreSQL(二十二)缓冲区管理器
  • 流程制造业与离散制造业有何差异?流程行业智能制造关注什么?
  • 【论文速读】《面向深度学习的联合消息传递与自编码器》,无线AI的挑战和解决思路
  • C++从入门到起飞之——输入输出!
  • 米文AD10配置gmsl摄像头操作
  • 【Selenium配置】WebDriver安装浏览器驱动(ChromeEdge)
  • 预测算法面试
  • 号称世界上第一个开源实时翻译的 App,微软开源GraphRAG:极大增强大模型问答、摘要、推理,以及开源基于ChatGPT的超级文本代码智能体(附代码地址)
  • PyTorch 2-深度学习-模块
  • 【MyBatis】MyBatis 理论 40 问(二)
  • 数据分析——Python网络爬虫(三){爬虫基本原理}
  • Linux 忘记root密码,通过单用户模式修改
  • 安卓热门面试题二
  • agents 分类
  • 【期末考试复习】概率论与数理统计(知识点模式 - 复习题2)