1. 中间件是什么
中间件顾名思义就是系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通,特别是应用软件对于系统软件的集中的逻辑,是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件在客户服务器的操作系统、网络和数据库之上,管理计算资源和网络通信。总的作用是处于自己上层的应用软件提供运行与开发的环境、帮助用户灵活、高效地开发和集成复杂的应用软件。
我们可以这样理解:就是一类能够为一种或多种应用程序合作互通、资源共享,同时还能为该应用程序提供相关的服务的软件。中间件是一类软件统称,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作。
2. 为什么要用中间件
具体地说,中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作、从而大大减少了技术上的负担。
中间件带给应用系统的,不只是开发的简便、开发周期的缩短,也减少了系统的维护、运行和管理的工作量,还减少了计算机总体费用的投入。
3. 中间件的使用场景
- 进行系统解耦
例如A系统给B系统发消息,A系统给C系统发消息,为了系统A不在随意修改,则可以A系统发消息给消息中间件,消息中间件转发消息给系统B系统C,也方便后面需要添加系统D,进行消息交互,如果将来很多系统进行信息交互时,则可以考虑添加消息中间件进行消息转发。 - 消息异步处理
A系统发消息给B系统,B在进行消息处理,不用及时回复A,则可以考虑加消息中间件,A只管发消息给中间键,B从中间件取出消息进行处理返回给A,消息中间件进行消息缓存,B异步读取处理。 - 大量请求需要屏蔽情况下,比如秒杀活动,排队等情况
如双十一开启个秒杀活动,会有大量请求消息,如果服务器处理所有消息的请求显然是不太合理的,秒杀结果只有少数人能得到,多数人是无效的请求,中间件缓存请求,后端服务器只需要取部分请求恢复处理即可。
4. 主要的中间件的分类
- Hadoop
当一个大任务由一台机器在规定的时间内不能完成时,人们就要采用分布式计算,即多台机器联合起来共同完成此任务。换句话说,就是将这个任务拆分成几个小人物,由多台计算机去完成。参与计算的多台计算机组成一个分布式系统,需要运行一系列的分布式基础算法。
Hadoop就是一个分布式计算平台,是用Java语言开发的,他的三个核心部件分别是:Common、MapReduce和HDFS三个核心部件
- Common为Hadoop提供一些常用的工具,主要包括系统配置工具Configuration、远程过程调用RPC/序列化机制和Hadoop抽象文件系统等。
- MapReduce是处理海量数据的计算模型
- 而HDFS用于储存海量数据,它具备高度容错性,能在低成本的通用硬件上稳定运行。
用 Hadoop 构建的应用实例对于计算资源的消耗具备两个明显的特征:
- 资源需求大:表明 Hadoop 需要大量的存储、计算和网络带宽。
- 资源需求具备季节性:表明除存储需求是经常性占用外,在运行 Mapreduce 时才需要大量的计算和网络资源,而分析大量数据的工作并不是经常性的——称为季节性
-
LVS
LVS是linux Virtual server的首字母缩写,意为Linux虚拟服务器,即把许多台物理 Linux 计算机逻辑上整合成一台超级计算机,但对用户来说只是一台计算能力很强的服务器
LVS就是一个由软件实现的负载均衡器,工作在网络 OSI 的第四层(应用层),代码已经并入了 Linux 内核。利用它,再加上一台廉价的计算机,就能构建一台企业级的负载均衡器。 -
静态网站服务器
我们浏览一家公司的网站时,很可能就是跟那家公司服务器上的 Apache 程序打交道,网页浏览器与 Apache 成了标准的 C/S 模式,浏览器是客户端,而 Apache 是服务端。Apache 首先把主页对应的文件 index.html 发给我们,我们看到主页内容后,点击主页上的某个链接,它又把该链接对应的文件发给我们。文章来源:https://www.toymoban.com/news/detail-461588.html -
动态应用服务器
开源的动态应用服务器有 JBoss、Tomcat、Geronimo、JOnAS等文章来源地址https://www.toymoban.com/news/detail-461588.html
到了这里,关于常见的中间件以及什么是中间件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!