中间件是一种独立的系统软件或服务程序,分布式应
用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/
服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之
间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或 OS 环境。
java 中间件,就是用java 语言实现的中间件
中间件是指CS程序中在客户机和服务器之间的中间软件+硬件层次,java中间件比较通俗的理解,你可以看成是Web应用服务器
tomcat、jboss、weblogic和websphere
常见的Java中间件有 Web中间件、消息中间件、分布式缓存中间件 、分布式事务中间件 、数据库中间件、RPC 中间件
1、Web 中间件是一种基于 Java 技术的中间件,主要用于构建 Web 应用程序和服务,
提供 HTTP 服务和 Web 应用程序部署支持,常见的Web 中间件有 :Apache Tomcat、Jetty、GlassFish、JBOSS 等。
2、消息中间件是一种基于 Java 技术的中间件,主要用于实现异步通信和解耦,使得应用程序能够通过发送和接收消息来实现分布式的交互,常见的消息中间件有:ActiveMQ、RabbitMQ、Kafka、RocketMQ、Pulsar等。
3、分布式缓存中间件是一种基于 Java 技术的中间件,主要用于提供分布式缓存服务。
分布式缓存中间件:提供一种分布式的缓存机制,能够存储大量数据并加快应用程序的访问速度。
分布式缓存中间件通常包括缓存节点、数据分片、数据同步、失效策略等组件。
常见的分布式缓存有Memcached、Redis、Ehcache 等。
4、分布式事务中间件是一种基于 Java 技术的中间件,主要用于保证分布式环境下的事务一致性和可靠性。
分布式事务中间件通常包括事务管理器、资源管理器、事务协调器等组件。
常见的 Java 分布式事务中间件包括 Atomikos、Bitronix、Narayana 等。
5、数据库中间件可以简化对读写分离以及分库分表的操作,并隐藏底层实现细节,可以像操作单库单表那样操作多库多表。
6、RPC 中间件是一种基于 Java 技术的中间件,主要用于实现远程过程调用和服务治理。RPC 中间件通常包括序列化、反序列化、传输协议、服务注册、服务发现等组件。常见的 Java RPC 中间件包括:Dubbo、gRPC、Thrift、Spring Cloud 、Spring Cloud Alibaba等。