常用中间件

本文介绍了中间件的概念,强调其在系统软件和用户软件间的作用,促进了不同应用之间的通信。接着讨论了分布式系统,包括其定义、解决的问题以及与微服务的区别。重点讲解了消息中间件,阐述了其应用场景、使用原因,对比了ActiveMQ、RabbitMQ、RocketMQ和Kafka等常见消息队列,并分析了消息中间件的优缺点以及核心组成部分。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

中间件

image-20210710230513501

什么是中间件

中间件(Middleware)顾名思义是系统软件和用户软件之间连接的软件,以便于软件各部分之间的沟通,特别是应用软件对于系统软件的集中逻辑,是一种独立的系统或者服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件在客户端服务器的操作系统、网络和数据库之上,管理计算机资源和网络通信。总的作用是为处于自己上层的应用软件提供运行和开发的环境,帮助用户灵活、高效的开发和集成复杂的应用软件

关于中间件,我们可以理解为:是一类能够为一种或者多种应用程序合作互通、资源共享同时还能够为应用程序提供相关的服务的软件。中间件是一类软件统称,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作

image-20210605142930181

分布式系统

什么是分布式系统

一个请求由服务器端的多个(服务或者系统)协同处理完成

分布式为了解决单个服务器容量和性能瓶颈问题而采用的优化手段,将一个业务拆分成不同的业务,分布在不同的机器上执行。服务之间通过远程调用协同工作,对外提供服务

分布式系统需要解决的问题

该领域需要解决的问题极多,在不同的技术层面上,又包括:分布式缓存、分布式数据库、分布式计算、分布式文件系统等

分布式的实现形式

  • 水平扩展:当一台机器扛不住流量时,就通过添加机器的方式,将流量分到所有服务器上,所有机器都可以提供相同的服务
  • 垂直拆分:前端有多种查询需求是时,一台机器扛不住,可以将不同的业务需求分发到不同的机器上,比如A机器处理余票查询的请求,B机器处理支付的请求

分布式和微服务的区别

微服务是架构设计方式,分布式是系统部署方式时

微服务架构

微服务

简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以单独部署运行,服务之间可以通过RPC来相互交互,每个微服务都是由独立的小团队开发,测试,部署,上线,负责它

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值