首页IT科技web常见的中间件有哪些(常见的Web应用中间件(基于Linux))

web常见的中间件有哪些(常见的Web应用中间件(基于Linux))

时间2025-07-13 00:18:03分类IT科技浏览4131
导读: 在整理常用的Web中间件时,我发现自己对于Web服务器、Web中间件和Web容器的概念容易混淆,所以在整理常见的Web应用中间件时,我想先区别一下Web服务器、Web中间件和Web容器。...

        在整理常用的Web中间件时            ,我发现自己对于Web服务器            、Web中间件和Web容器的概念容易混淆                  ,所以在整理常见的Web应用中间件时       ,我想先区别一下Web服务器                   、Web中间件和Web容器            。

Web服务器

        Web服务器也可以称为网站服务器         ,时提供Web服务的软件或主机                  ,Web服务器可以处理HTTP协议          ,响应针对静态页面或图片的请求      ,进行页面跳转                  ,或者把动态请求委托给其他程序                  。Web服务器可以向Web浏览器等客户端提供文档             ,也可以放置网站文件   ,让全世界浏览                  ,更可以放置数据文件                ,让全世界下载       。常见的Web服务器有IIS      、Apache         、nginx和Tomcat等         。

Web中间件

        中间件(英语:Middleware)是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通                  。中间件处在操作系统和更高一级应用程序之间          。他充当的功能是:将应用程序运行环境与操作系统隔离               ,从而实现应用程序开发者不必为更多系统问题忧虑                   ,而直接关注该应用程序在解决问题上的能力       。

        也就是说    ,关于中间件            ,我们可以理解为:是一类能够为一种或多种应用程序合作互通                   、资源共享                  ,同时还能够为该应用程序提供相关的服务的软件                  。(注意:中间件是一类软件的总称       ,不是单独的一个软件)             。

Web容器

    为了与页面产生交互操作         ,来获取动态结果                  ,需要一些扩展机制能够让HTTP服务器调用服务端程序          ,Servlet技术产生了      ,可以把Servlet简单理解为运行在服务端的Java小程序                  ,但是Servlet没有main方法             ,不能独立运行   ,因此必须把它部署到Servlet容器中                  ,由容器来实例化并调用Servlet   。而Tomcat和Jetty就是一个Servlet容器                  。为了方便使用                ,它们也具有HTTP服务器的功能,因此Tomcat或者Jetty就是一个“HTTP服务器 + Servlet容器            ”               ,我们也叫它们Web容器                。

总结

        通过以上的概念理解                   ,这三者其实是有包含关系的。

Web服务器:IIS         、Apache      、Nginx                   、Tomcat            、Jboss   、Jetty                   、Weblogic               、Webshere、Glasshfish                、Lighttpd等

Web中间件:Tomcat                   、Jboss   、Jetty            、Weblogic                   、Webshere      、Glasshfish等

Web容器:IIS(asp容器)         、Tomcat(servlet容器)                   、Jboss(EJB容器)

        所以应该是 Web服务器>Web中间件>Web容器               。

        接下来整理基于Linux系统下的常见的Web中间件                   。

一         、Apache(httpd)

        Apache HTTPD又可以简称为httpd或者Apache    ,它是Internet使用最广泛的web服务器之一            ,使用Apache提供的web服务器是由守护进程httpd                  ,通过http协议进行文本传输       ,默认使用80端口的明文传输方式         ,当然                  ,后来          ,为了保证数据的安全和可靠性      ,又添加了443的加密传输的方式                  ,Apache提供的服务器又被称为:补丁服务器             ,原因很简单   ,它是一款高度模块化的软件                  ,想要给它添加相应的功能只需添加相应的模块                ,让其Apache主程序加载相应的模块,不需要的模块也可以不用加载               ,保证了Apache的简洁                   ,轻便    ,高效性            ,当出现大量访问一个服务器是可以使用多种复用模式                  ,保证了服务器能快速回应客户端的请求       ,如MPM         ,端口复用技术    。

特点:  开放源代码 跨平台使用                  ,支持绝大多数硬件平台          ,支持所有的unix系统和linux系统      ,支持大多数windows平台 支持多种web编程语言                  ,perl             ,php   ,python                  ,java等 模块化设计                ,根据所需功能去安装不同的模块 运行非常稳定,支持大负载访问的web站点 安全性高               ,及时修复已发现的漏洞

二      、Tomcat

        适用于本地开发                   ,小项目    ,或者是个人开发(免费的开放源代码的Web 应用服务器)            ,Apache 为HTML页面服务                  ,而Tomcat 实际上运行JSP 页面和Servlet       ,但是Tomcat处理静态[HTML]的能力不如Apache服务器            。

特点: 支持最新标准(SUN的专家经常和TOMCAT的开发人员在一起混) 更新快 跨平台 体积小         ,安装和部署都方便

三                   、weblogic

大项目或者商业项目                  ,Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发            、集成   、部署和管理之中          ,是美国bea公司出品的一个基于j2ee架构的中间件                  。

特点: 简化了可移植及可扩展的应用系统的开发      ,并为其它应用系统和系统提供了丰富的互操作性 商业软件,功能齐全强大,主要应用于大型企业的大型项目 是高扩展的架构体系

四                   、jetty

一些示例项目或者小项目常(开源的servlet容器)                  ,是使用Java语言编写的             ,Jetty的运行速度较快   ,而且是轻量级的                  ,可以在Java中可以从test case中控制其运行       。从而可以使[自动化测试]不再依赖外部环境                ,顺利实现自动化测试         。

特点: 具有易用性               、可扩展性、易嵌入性 快速高效

五                、JBoss

管理EJB的容器和服务器(开放源代码的项目),JBoss遵循商业友好的LGPL授权分发               ,并且由开源社区开发                  。

特点: 应用服务器还具有许多优秀的特质          。 需要的内存和硬盘空间比较小      。 安装便捷:解压后                   ,只需配置一些环境变量即可                  。 支持"热部署"    ,部署BEAN时            ,只拷贝BEAN的JAR文件到部署路径下即可自动加载;如果有改动                  ,也会自动更新             。Boss与Web服务器在同一个Java虚拟机中运行       ,Servlet调用EJB不经过网络         ,从而大大提高运行效率                  ,提升安全性能   。 用户可以直接实施J2EE-EAR          ,而不是以前分别实施EJB-JAR和Web-WAR      ,非常方便                  。 Jboss支持[集群]                。

六                   、WebSphere

IBM 的软件平台                  ,它包含了编写   、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台            、跨产品解决方案所需要的整个中间件基础设施             ,如服务器                   、服务和工具。WebSphere 提供了可靠      、灵活和健壮的软件               。WebSphere 是一个模块化的平台   ,基于业界支持的开放标准                   。可以通过受信任和持久的接口                  ,将现有资产插入 WebSphere                ,可以继续扩展环境    。WebSphere 可以在许多平台上运行,包括 Intel         、Linux 和 z/OS            。

特点: 满足大量应用的需要 运行于多种硬件和OS平台 支持分布计算               ,提供跨网络                   、硬件和OS平台的透明性的应用或服务的交互 支持标准的协议 支持标准的接口

七         、nginx

        Nginx 是高性能的 HTTP 和反向代理的web服务器                   ,Nginx 可以作为静态页面的 web 服务器    ,同时还支持 CGI 协议的动态语言            ,比如 perl      、php 等                  。但是不支持 java       。Java 程序只能通过与 tomcat 配合完成         。Nginx 专为性能优化而开发                  , 性能是其最重要的考量,实现上非常注重效率       ,能经受高负载的考验,有报告表明能支持高 达 50,000 个并发连接数                  。

特点: 跨平台:Nginx 可以在大多数 Unix like OS编译运行         ,而且也有Windows的移植版本          。 配置异常简单:非常容易上手      。配置风格跟程序开发一样                  ,神一般的配置                  。 非阻塞                   、高并发连接:数据复制时          ,磁盘I/O的第一阶段是非阻塞的             。官方测试能够支撑5万并发连接      ,在实际生产环境中跑到2~3万并发连接数.(这得益于Nginx使用了最新的epoll模型)   。 内存消耗小 稳定性高:用于反向代理                  ,宕机的概率微乎其微                  。nginx代理和后端web服务器间无需长连接                。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
python opencv获取图像大小(python OpenCV的图像处理) 云手机挂机赚钱是真的吗(手机云挂机平台有哪些-这次我要打差评!“旗舰”云手机体验感)