一、WEB服务器

WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。

WWW 采用的是浏览器/服务器结构,其作用是整理和储存各种WWW资源,并响应客户端软件的请求,把客户所需的资源传送到 Windows 95(或Windows 98)、Windows NT、UNⅨ 或 Linux 等平台上。

B/S架构两方面好处:客户端使用统一的浏览器Browser;服务端基于统一的HTTP协议。

使用最多的 web server服务器软件有两个:微软的信息服务器(IIS),和Apache。

通俗的讲,Web服务器传送(serves)页面使浏览器可以浏览,然而应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods)。确切一点,Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑(business logic)。

Web服务器不支持事务处理或数据库连接池,但它可以配置(employ)各种策略(strategies)来实现容错性(fault tolerance)和可扩展性(scalability),例如负载平衡(load balancing),缓冲(caching)。集群特征(clustering—features)经常被误认为仅仅是应用程序服务器专有的特征。

1、常见的 WEB 服务器 

  • Apache服务器:A pache(哈哈 一个补丁 我乍一听还以为是直升机)使用广泛,开放源代码,支持多个平台,相比其他服务器占的内存较大,是重量级产品。
  • Microsoft IIS 服务器:微软的,包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,要使用它需要购买对应的商业window server操作系统。
  • Nginx服务器:(发音同engine x)俄罗斯的一个站点开发的,相比于Apache服务器,Nginx占用内存小且较稳定。
  • Tomcat服务器:(哈哈 汤姆猫服务器)也是开放源代码的,运行servlet和JSP Web应用软件基于Java,比绝大多数的商业用的软件服务器要好。

2、WEB服务器工作原理

Web服务器的工作原理,一般可分成如下4个步骤:连接过程、请求过程、应答过程以及关闭连接。下面对这4个步骤作一简单的介绍。连接过程就是Web服务器和其浏览器之间所建立起来的一种连接。查看连接过程是否实现,用户可以找到和打开socket这个虚拟文件,这个文件的建立意味着连接过程这一步骤已经成功建立。请求过程就是Web的浏览器运用socket这个文件向其服务器而提出各种请求。应答过程就是运用HTTP协议把在请求过程中所提出来的请求传输到Web的服务器,进而实施任务处理,然后运用HTTP协议把任务处理的结果传输到Web的浏览器,同时在Web的浏览器上面展示上述所请求之界面。关闭连接就是当上一个步骤--应答过程完成以后,Web服务器和其浏览器之间断开连接之过程。Web服务器上述4个步骤环环相扣、紧密相联,逻辑性比较强,可以支持多个进程、多个线程以及多个进程与多个线程相混合的技术。

3、打开浏览器,在地址栏输入url 到页面展现,整个过程发生了什么?

  • 用户输入网址:用户输入网址,包含协议和域名
  • 浏览器获得IP地址:浏览器先找自身缓存看是否有记录,没有的话再找操作系统缓存,再没有就请求本地DNS服务器帮忙,本地DNS再找不到再一层层往上;最终,浏览器获得了对应的IP地址。
  • 浏览器发送请求:浏览器根据HTTP协议,给对应IP地址的主机发送请求报文,默认端口为80,报文含请求内容、浏览器信息、本地缓存、cookie等等信息。
  • web服务器接收请求、寻找文件:web服务器接收到请求,在自己目录下开始寻找对应php文件
  • PHP服务器翻译php文件:找到后将文件发给PHP服务器,PHP服务器打开php文件进行翻译,如果碰到需要数据库对应数据的部分,PHP服务器就用标准的SQL查询语句来获取数据库中的数据。
  • MySQL数据库提供数据:接收PHP服务器指令,会反馈对应数据给PHP服务器。
  • PHP服务器完成翻译发给web服务器:PHP服务器将php文件翻译生成静态html代码,并发送给web服务器。
  • web服务器接收并通知浏览器:web服务器接收PHP服务器的html代码,并反馈给浏览器让浏览器开始下载。
  • 浏览器下载:浏览器收到web服务器通知,开始下载请求的所有资源。
  • 浏览器解析渲染:浏览器边下载边解析,并开始生成html树和css树,组合二者并开始渲染页面。
  • 浏览器呈现页面:页面渲染完成,浏览器将网页绘制出呈现给用户。

转载自:点击打开链接

二、WampServer(WAMP——windows+Apache+mysql+PHP)

    WampServer是一款Apache Web服务器、PHP解释器以及MySQL数据库的整合软件包。WampServer就是Windows Apache Mysql PHP集成安装环境,即在window下的apache、php和mysql的服务器软件。

三、中间件

中间件(Middleware)是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通,特别是应用软件对于系统软件的集中的逻辑,是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。

中间件是一类软件的总称,不是单独的一个软件。

  中间件叫做中间件服务器,也叫作应用服务器。正常情况下一次web的访问顺序是:web浏览器---web服务器(3W的那个,非广义)---web容器---应用服务器---数据库服务器。

一般本地开发经常使用的应用服务器就是tomcat,linux系统经常使用的是jetty或apache hppt。WebLogic服务器是企业级的应用服务器,支持EJB, 集群以及 ERP(企业资源计划)的连通性 ;WebSphere产品系列是IBM公司一套典型的电子商务应用开发工具及运行环境。

WEB服务器和中间件相关推荐

  1. web容器、中间件以及web服务器的区别

    一.web容器 1.web容器的介绍 web容器是一种服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求.实际上,Web容器是一种服务程序,给处于其中的应用程序 ...

  2. web服务器,web中间件,web容器的区别

    web服务器,中间件,web容器 web服务器 中间件 web容器 结论 前言:才学习的时候,就听过大名鼎鼎的web服务器,apache,iis,tomcat,后面进一步学习的时候,发现有个web中间 ...

  3. 理解各种设计模式原则及区别丨浅谈Nginx中核心设计模式-责任链模式丨C++后端开发丨Linux服务器开发丨web服务器

    理解各种设计模式原则及区别丨浅谈Nginx中核心设计模式-责任链模式 1. 开闭.单一职责.里氏替换.接口隔离等设计原则 2. 随处可见的模板方法 3. nginx中核心设计模式 责任链模式 4. 责 ...

  4. Web服务器(中间件)漏洞

    Web服务器又叫Web中间件,常见的Web中间件有 IIS Apache Nginx Tomcat Weblogic JBoss IIS IIS6.0文件解析漏洞,文件名中分号;后面的内容不会被解析, ...

  5. 在Node.js中使用express开启一个web服务器并定义简单中间件函数的使用

    //1.导入express const express = require('express') //2.创建web服务器 const app = express() //利用use()函数定义全局中 ...

  6. web服务器、Web中间件和Web容器的区别

    目录 Web服务器 中间件 容器 总结 Web开发的选择 我们经常会被Web服务器.Web容器和Web中间件这三个概念搞混.因为我们常见的很多网站要么是由IIS搭建,要么是由Apache.Tomcat ...

  7. web容器、服务器、中间件

    我们经常会被Web服务器.Web容器和Web中间件这三个概念搞混.因为我们常见的很多网站要么是由IIS搭建,要么是由Apache.Tomcat.Ngnix搭建.所以,我们会把他们都叫成是Web服务器, ...

  8. Web服务(02)——Web服务器中间件

    文章目录 Web服务(02)--Web服务器中间件 前言 一.JAVA中间件 1.Tomcat 2.Weblogic 3.Jboss 4.Webshaere 二.Python中间件 1.wsgi 2. ...

  9. web服务器、Web中间件和Web容器的区别(转载)

    目录 查看全文 http://www.taodudu.cc/news/show-4922474.html 相关文章: Web 中间件漏洞 WEB常见中间件漏洞原理 Java Web中间件 Web中间件 ...

最新文章

  1. 太神奇的 SQL 查询经历,group by 慢查询优化!
  2. Verilog 中的 function
  3. 查全率[召回率]与精度[查准率] 之辨析
  4. yiilite.php,缓存 - yii在哪些情况下可以加载yiilite.php?
  5. vb mysql 插入记录_vb实现数据库的连接,修改,删除,插入(ADO.Net)
  6. 中文系统使用日文键盘-转
  7. 人行地区代码一览表_世界各国和地区名称代码表
  8. AUTOCAD——拉伸
  9. AdapterVIew
  10. java基础面试题84道
  11. 带你揭秘网络工程师群体!
  12. Make sure that libnvrtc-builtins.so.11.1 is installed correctly.
  13. 一份硬核计算机科学CS自学计划
  14. Linux8 搭建缓存DNS服务器
  15. App上线后,如何使用二维码进行推广
  16. 怎么用dw修改PHP网页模板,【网站模板如何使用】从网站下载的网页模板在dwcs6中如何修改使用?什么是网页设计模板,如何利用网页设计模板?...
  17. win7手动恢复注册表
  18. 电商项目_dwd主题域
  19. Azure Key Vault 简介
  20. [ WARN] [1588040435.867625184]: MessageFilter [target=odom ]: Dropped 97.37% of messages so

热门文章

  1. 逆向基础-shellCode
  2. Java实现(直接)插入排序
  3. 【前端】保姆级的CSS简介
  4. Scanpy Umap 3D
  5. RTK与网络RTK技术的发展现状
  6. iar软件中C语言跳出for循环,关于 IAR一些C语言扩展
  7. c语言五子棋评估函数,局面评估函数——简介
  8. 网站运营方案SEO【运营】
  9. 1分钟学会PS滤镜库
  10. 这可能是目前最全的!java经典书籍排行豆瓣