什么是中间件(大数据中间件有哪些)

文章目录

  • 1.事务处理中间件-Hadoop
  • 2.消息中间件-QPID
  • 3.Web服务器中间件-Tomcat

操作系统、数据库、中间件被称为系统软件的三驾马车,其中中间件最为神秘。操作系统,如Windows、Linux等。,稍微有点常识的朋友都很熟悉,对其功能也略知一二。数据库可以是存储数据的仓库。让我们在本文中简单地谈谈中间件。

关于中间件:

中间件是一个独立的系统软件或服务程序。分布式应用软件通过这种软件在不同技术之间共享资源。中间件位于客户机服务器的操作系统上,管理计算资源和网络通信。-IDC对中间件的定义

中间件位于操作系统和用户软件之间,其作用是在开发中为其上层应用软件提供运行的环境,帮助用户灵活高效地开发和集成加载的应用软件。一般来说,中间件可以理解为水管,它不提供传统应用的功能,而是提供软件之间的连接,可以使数据从一个应用流向另一个应用。

中间件发展的动力来自于软件开发简洁、高效、可复用的特点。中间件为开发核心提供了简单、一致和集成的运行环境,简化了分布式系统的设计和编程核心管理。常见中间件的示例

1.事务处理中间件-Hadoop

当一个大任务在规定时间内一台机器无法完成时,人们就会采用分布式计算,即多台机器联合起来共同完成任务。换句话说,就是把大任务拆分成很多小任务,然后把这些小任务分配给多台电脑来完成。参与计算的多台计算机组成一个分布式系统,需要运行一系列分布式的基础算法。

Hadoop实现了分布式计算中的基本算法(如一致性算法、选举算法、故障检测、快照等。),并为用户提供编程和命令接口。程序员可以通过调用这些函数轻松编写分布式应用程序。我们都知道,如果一切从零开始,完成一个分布式程序的编写是极其困难的。Hadoop“覆盖”操作系统,向上提供函数调用(API)和命令接口,横向完成分布式系统的基础算法。作为程序员和用户,懂API和命令就好。

图一。大数据

Hadoop平台衍生的开源项目主要有Yarn、HBase、Hive、ZooKeeper、Avro、Sqoop、Mahout、Crossbow等。

2.消息中间件-QPID

消息中间件是一种存储和管理软件之间交互的技术,也可以看作是一个容器。

消息队列是消息中间件的一种实现。以下是消息队列传递服务的模型:

图二。消息队列传递服务模型

Qpid是Apache开发的面向对象的消息中间件。Qpid提供了许多额外的HA特性,非常适合集群环境中的消息通信。它提供了两个版本的代理服务器,C和Java,并支持多种语言的客户端。

Qpid还提供了提供安全认证的特性。任何需要与代理通信的生产者/消费者都需要提供身份验证。QPID的安全认证使用SSL协议。

图3。Qpid中间件

目前广泛使用的有ActiveMQ、RabbitMQ、ZeroMQ、Kafka、MetaMQ、RocketMQ等。

3.Web服务器中间件-Tomcat

Web服务器的工作原理一般可以分为以下四个步骤:

连接过程就是Web服务器和其浏览器之间所建立起来的一种连接。查看连接过程是否实现,用户可以找到和打开socket这个虚拟文件,这个文件的建立意味着连接过程这一步骤已经成功建立。请求过程就是Web的浏览器运用socket这个文件向其服务器而提出各种请求。应答过程就是运用HTTP协议把在请求过程中所提出来的请求传输到Web的服务器,进而实施任务处理,然后运用HTTP协议把任务处理的结果传输到Web的浏览器,同时在Web的浏览器上面展示上述所请求之界面。关闭连接就是当上一个步骤应答过程完成以后,Web服务器和其浏览器之间断开连接之过程。

Web服务器的上述四个步骤联系紧密,逻辑严密,可以支持多进程、多线程以及多进程、多线程混合的技术。

Tomcat server是一款免费开源的Web应用服务器,其工作流程如下图所示:

图4。Tomcat服务器工作原理图

常见的web中间件有Tomcat、Weblogic、JBoss、jetty、webshere、glassfish。

(0)
上一篇 2022年4月25日
下一篇 2022年4月25日

相关推荐