文章插图
操作系统、数据库、中间件号称系统软件三驾马车,其中的中间件是最神秘的 。操作系统,如Windows,Linux等等,略有常识的小伙伴都耳熟能详,对于其功能也略知一二,数据库大致也许是一个用来存储数据的仓库 。本文我们来简单的说一下中间件
关于中间件:
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信 。——IDC对于中间件的定义
中间件位于操作系统与用户软件之间,作用是为自己上层的应用软件提供运行于开发的环境,帮助用户灵活高效地开发和集成负载的应用软件 。通俗的可以将中间件理解为一个水管,它不提供传统的应用的功能,而是提供软件与软件之间的连接,它能够让数据从一个应用流动的另一个应用之中 。
中间件发展的驱动力来源于凝练、高效、复用的软件开发特点,通过中间件提供简单、一致、集成的开发核运行环境,简化分布式系统的设计、编程核管理 。常见的中间件举例
1.事务处理中间件——Hadoop 当一个大的任务由一台机器在规定的时间内不能完成时,人们就要采用分布式计算,即很多台机器联合起来共同完成任务 。换句话说,就是把大任务拆分成许多个小任务,然后再把这些小任务分配给多台计算机去完成 。参与计算的多台计算机组成一个分布式系统,需要运行一系列的分布式基础算法 。
Hadoop 实现了分布式计算中的基础算法(如一致算法、选举算法、故障检测、快照等),同时为用户提供了编程和命令接口 。程序员调用这些函数能轻松写出分布式应用程序,我们都知道,如果一切从头开始,要完成一个分布式程序的编写是异常艰难的 。Hadoop“覆盖”在操作系统之上,向上提供函数调用(API)和命令接口,在水平方向完成分布式系统的基础算法 。作为编程人员和用户,只要了解 API 和命令即可 。
图1. Hadoop
基于 Hadoop 平台衍生出来的开源项目主要有 Yarn、HBase、Hive、ZooKeeper、Avro、Sqoop、Mahout、Crossbow 等 。
2. 消息中间件——QPID 消息中间件则是将软件与软件之间的交互方式进行存储和管理的一种技术,也可以看做是一种容器 。
消息队列,是消息中间件的一种实现方式,下面是消息队列传递服务的模型:
图2. 消息队列传递服务模型
Qpid 是 Apache 开发的一款面向对象的消息中间件,Qpid 提供了很多额外的 HA 特性,非常适于集群环境下的消息通信 。它提供了 C 和 Java 两个版本的 broker服务端,并支持多种语言的客户端 。
Qpid 还提供了提供了安全认证特性,任何 producer/consumer 需要和 broker 通信时,都需要提供身份认证 。QPID 的安全认证使用 SSL 协议 。
图3. Qpid 中间件
目前使用较多的消息队列有 ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ等。
3. Web服务器中间件——TOMCAT Web服务器的工作原理,一般可分成如下4个步骤:
- 连接过程就是Web服务器和其浏览器之间所建立起来的一种连接 。查看连接过程是否实现,用户可以找到和打开socket这个虚拟文件,这个文件的建立意味着连接过程这一步骤已经成功建立 。
- 请求过程就是Web的浏览器运用socket这个文件向其服务器而提出各种请求 。
- 应答过程就是运用HTTP协议把在请求过程中所提出来的请求传输到Web的服务器,进而实施任务处理,然后运用HTTP协议把任务处理的结果传输到Web的浏览器,同时在Web的浏览器上面展示上述所请求之界面 。
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- 什么东西补锌 缺锌吃什么食物补充最快
- pose什么意思 pose
- acg是什么意思 ace是什么意思
- 血友病是什么 血友病怎样属于轻型和重型
- 什么是子公司 怎么查公司的所有子公司
- 5月有哪些星座水逆 5月什么星座水逆
- 星座运势水逆 水逆星座处女9月什么时候结束
- 什么星座天生唱歌又好听 最有音乐才华的星座
- 乌鸦为什么是黑的 乌鸦变黑的童话故事
- 四点底的字和什么有关 点字为什么有四点底