分布式系统与消息中间件的介绍

分布式系统:


将一个系统按照业务模块拆分为多个独立的子系统

优点:

  1. 业务模块相应独立,某一个业务模块升级,不用升级整个系统
  2. 开发方便,不需要将代码合并
  3. 如果某一个业务模块压力大,只需要对该业务模块单独进行扩展(水平),其他的业务系统不受影响,可以充分利用资源.

缺点:

  1. 系统之间交互,需要通过rpc,rest来实现,这样系统间还是有比较强的耦合.
  2. 当某一个业务大时,还是会出现业务系统崩溃的问题.

消息中间件


概述:

  1. 利用高效可靠的消息传递机制进行平台无关的数据交流;
  2. 并基于数据通信来进行分布式系统的集成;
  3. 通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信;

应用场景:

  1. 跨系统数据传递,高并发流量削峰,数据异步处理等等…

常用的:

​ ActiveMQ:老牌消息中间件,RabbitMQ,Kafka,RockerMQ

本质:

​ 一种具备接收请求,保存数据,发送数据等功能的网络应用.和一般网络应用程序的区别是它主要负责数据的接收和传递,所以性能一般都高于普通程序

五大核心组成:

  • 协议

    • 是计算机之间通信时共同遵从的一组约定,都遵守相同的约定,计算机之间才能相互交流
    • 语法:http规定了请求报文和响应报文的具体格式
    • 语义:客户端主动发起的操作叫请求
    • 时序:一个请求对应一个响应
    • 常用的协议:OpenWire,AMQP,MQTT,Kafka,OpenMessage
    • http协议不适合做消息协议:因为数据包太大(header,cookie等)
  • 持久化机制

    • 将数据存入磁盘,而不是存在内存中随服务重启而消失,是数据能够永久保存,叫做持久化.
  • 消息分发机制
    -在这里插入图片描述

  • 高可用设计

    • 分布式架构设计
  • 高可靠设计

    • 指系统可以无故障的持续运行,比如一个系统从来不崩溃,报错,或者崩溃,报错几率低,就是高可靠
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值