什么是基础设施中间件

前言

本文说说基础设施中间件这个概念,英文是 infrastructure middleware

正文

1. 什么是基础设施中间件?

简单说,基础设施中间件就是软件的"公共设施"。

它不直接处理你的业务(比如"下单"或"支付"),但它为所有处理业务的软件提供基础支撑 ,让它们能互相通信、存储数据、协调工作。

2. 它主要涉及哪些知识?(四大件)

你可以把它想象成软件世界的四大基础设施:

  1. 消息队列

    • 是啥:软件 A 把消息(比如一个"新订单")扔到一个地方,就溜了;软件 B 在有空的时候,从"这个地方"取出数据来处理。
    • 作用 :解耦 和削峰填谷。防止一个系统忙死,另一个系统闲死。
    • 🌰:Kafka, RabbitMQ
  2. 缓存

    • 是啥:一个"高速工作台"。把最常用、最热门的数据(比如商品信息、热门文章)放在这里,读取速度极快。为什么快?因为数据存放在内存里,避免了缓慢的磁盘读写,实现了纳秒级的直接访问。
    • 作用 :提速。减少去慢速的"大仓库"(数据库)里翻找的次数。
    • 🌰 :Redis, Memcached 📚 补充知识 1:Memcached 和 Redis 的区别是什么?📚:

      Memcached 是追求简单高效的分布式内存缓存,仅支持键值对数据结构; Redis 是功能更丰富的内存数据存储,支持多种数据结构、持久化及复杂操作,在满足缓存需求的同时能处理更多场景。

      📚 补充知识 2:磁盘和内存的区别是什么?📚:

      磁盘是数据的"仓库",用于长期、海量存储;内存是数据的"工作台",CPU 直接从这里高速处理当前任务的数据。程序和数据平时存放在磁盘这个"仓库"里,当需要运行时,就会被加载到内存这个"工作台"上,供 CPU 快速取用和处理,处理完的结果如果需要长期保存,再写回磁盘。🍃

  3. 配置中心

    • 是啥:一个"中央控制面板"。所有软件的配置信息(比如开关、参数)都放在这里统一管理。
    • 作用 :集中管理 和动态调整。想改个参数,不用一个个去改每个软件,在这里改一下,所有软件自动生效。
    • 🌰:Nacos, Apollo, Consul
  4. 分布式协调/服务发现

    • 是啥:一个"电话总机"或"服务注册簿"。当你有成百上千个服务时,服务 A 想找服务 B,不用记 IP 地址,直接问这个"总机"就行。
    • 作用 :服务治理。让众多服务能互相找到、协同工作,并管理它们的状态。
    • 🌰:Zookeeper, Nacos, Etcd

最后

文章的最后,简单总结一下基础设施中间件 ✨:

  • 它是什么:软件的"公共设施"和"粘合剂"。
  • 它的目的 :让复杂的软件系统能更稳定、更快速、更灵活地协同工作。
  • 核心知识 ⭐ :主要围绕 消息、缓存、配置、服务协调 这四大方面。

大多数业务场景下,你不需要知道它们内部具体怎么造,只需要知道它们是构建现代大型软件(比如淘宝、微信)的基石就行了,现代社会离不开他们的。

就像我们用水用电,不需要知道发电厂和自来水厂怎么工作一样。

相关推荐
蜗牛互联网6 分钟前
Computer Use公共预览的安全设计:应用、动作与数据三维门禁
java·人工智能·后端·安全·策略模式
吴声子夜歌14 分钟前
Nginx应用与运维——Nginx Web服务应用实战(HTTPS安全服务器的搭建)
运维·前端·nginx
YYYing.16 分钟前
【设计模式系列 (八) 】组合模式
c++·后端·设计模式·组合模式·c/c++
liangshanbo121519 分钟前
Monorepo 工程化面试题:如何设计 Web + Node.js 中间层 + Shared + Scripts 的 Monorepo?
前端·node.js
IT_陈寒21 分钟前
Redis集群切换主节点时,服务竟然全员掉线
前端·人工智能·后端
wangbing112527 分钟前
开发指南147-WebSocket-前端
前端·websocket·网络协议
吴声子夜歌28 分钟前
Nginx应用与运维——Nginx Web服务应用实战(伪流媒体服务器的搭建)
运维·前端·nginx
打工仔折腾 AI29 分钟前
多台服务器日志分散难查?用Promtail+Loki+Grafana搭建集中检索平台
服务器·人工智能·后端·python·性能优化·django·grafana
打工仔折腾 AI41 分钟前
DiPlay 实测:iPhone 绕过硬件盒子直连 BYD 车机的思路拆解
android·人工智能·后端·python·gradle·iphone·ai agent 实战
ss2731 小时前
AI全栈实战 | 2.4-01 Node 与前端工程化:前端为什么离不开 Node,它不只是构建工具的宿主
前端