Java问题:中间件是什么
2023-09-11 14:18:08 时间
和朋友聊天时被问到中间件是什么?一时有点语赛,感觉熟悉这个概念,但又完全不知道如何清楚的向别人讲这些。
网络上搜了一下,也没找到让自己很认可的说法,有的说非业务的技术类组件,是操作系统之上和业务逻辑之下的中间层都可以称之为中间件,有说用于解耦底层逻辑和业务应用的组件,也有说是一些可复用的后台组件,似乎有点道理但又没完全讲清楚这个概念。
中间件就是在大型网站中,帮助各子模块间实现互相访问,消息共享或统一访问等功能的软件产品。常见的有:
远程服务框架中间件:主要解决各子模块之间互相访问的问题。 如分布式服务框架Dubbo,RPC框架等
消息队列中间件:主要解决各子模之间消息共享的问题。 是一种EDA架构(event driven architecture):通过在低耦合的模块之间传输事件消息来完成模块之间的合作。大型网站中,消息队列采用发布/订阅模式。消息发布者发布消息到消息队列,消息消费者只要对该类消息感兴趣,就可以订阅该消息,对其他的业务没有任何的影响。
数据访问中间件:用于简化应用层对数据层的访问。
从草稿箱中翻出这篇文章,再看这个问题,觉得中间件其实也有两个层面不同理解。狭义中间件如常见的远程服务框架、消息队列、缓存等;广义的中间件是操作系统之上业务逻辑之下的所有可复用的后台组件。
今天是教师节,向所有曾教过自己的教师表示感恩!
相关文章
- [Java 基础] 使用java.util.zip包压缩和解压缩文件
- ssh(Spring+Spring mvc+hibernate)——EmpServiceImpl.java
- java中获取当前系统日期
- Java实现 LeetCode 417 太平洋大西洋水流问题
- java实现第五届蓝桥杯生物芯片
- java实现第六届蓝桥杯四阶幻方
- Java实现 蓝桥杯VIP 算法训练 ALGO-16进制转换
- Java实现 蓝桥杯VIP 算法训练 数组查找及替换问题
- Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
- Java面试宝典(2020版)
- 【JAVA】 02-Java对象细节
- macos:安装java 17.0.6(android studio报错:Unable to locate a Java Runtime.)
- Java NIO -- 缓冲区(Buffer)的数据存取
- Java超类-java.lang.object
- 程序员面试系列之Java单例模式的攻击与防御
- paip兼容windows与linux的java类根目录路径的方法
- 华为OD机试 - 最小调整顺序次数、特异性双端队列(Java & JS & Python)
- 【java】Java 枚举(enum)如何使用以及原理
- java常用中间件处理数据交互、连接数据分离之后两个系统间的通信
- JAVA编程:java环境安装和helloworld
- 解决idea出现的java.lang.OutOfMemoryError: Java heap space的问题
- mysql-connector-java与Mysql、Java的对应版本
- java正则提取括号中的关键词
- 【java】Java并发编程系列-基础知识(非常详细哦)
- 第十三届蓝桥杯B组Java(试题C:字符统计)
- 经典Java面试100例,轻松搞定BAT——高频面试题(下)