WEB服务器有哪几种_web服务器的工作原理

服务器

7人已加入

描述

  WEB服务器有哪几种

  如今的Web服务器有很多种,大家在做项目的时候根据自己的需求进行灵活的选择。下面小编就给大家分享一下目前都有哪些Web服务器。

  1.Apache

  Apache也被叫做httpd服务器,是目前使用最广泛的web服务器,它被应用于各种平台之中。Apache刚开始被推出的时候有很多的缺陷,如今已经被修复的越来越完善,如果你是web服务器的钻研者,小编建议你一定要学习一下Apache的使用。

  2.Nginx

  Nginx是Linux平台下的优秀Web服务器,小编以前用过这个服务器,它让本来运行很慢的应用程序提升了很大的速度。

  3.IIS

  IIS是微软平台的Web服务器,是针对Windows平台的服务器。它和NET语言非常的搭配,新手掌握起来也比较快。

  4.WebLogic

  WebLogic是专门应用于企业级开发的web服务器,比较常见的是和Java语言搭配,使用起来和Apache差不多,同时它的架构也非常的优秀。

  5.Tomcat

  Tomcat是很多Java学习者都非常熟悉的web服务器,一般刚开始学习Java Web开发的人都会使用Tomcat作为服务器进行练习。它既有可视化的操作界面,也有命令语句,是不错的入门级服务器。

  6.Lighttpd

  Lighttpd是一款开源的web服务器,比较的轻巧,功能也很多。目前在使用率上比较少,还没有推广起来。

  7.Sun

  Sun是一款针对Solaris的web服务器,应用范围不是很广泛,只应用于Sun公司的相应web产品。另外一般的开发者轻易的用不了这款服务器。

  8.Jetty

  Jetty是专门针对Java Web的服务器,它被用来运行Servlet程序,是众多服务器中最局限的一个了。小编并不建议大家掌握这款服务器。

  web服务器的工作原理

  我们最常说的Web服务器指的是网站服务器,它是建立在Internet之上并且驻留在某种计算机上的程序。Web服务器可以向Web客户端(如浏览器)提供文档或其他服务,只要是遵循HTTP协议而设计的网络应用程序都可以是Web客户端。

  Web服务器和HTTP服务器可以说是同一个东西,当然非得细分的话,HTTP服务器是建立在HTTP协议之上的提供文档浏览的服务器,更多的是提供静态的文件。而Web服务器涵盖了HTTP服务器(这一点可以自行百度百科), Web服务器不仅能够存储信息,还能在用户通过Web浏览器提供的信息的基础上运行脚本和程序。

Web服务器

  上面这张图,将一次Web服务的工作流程过一遍,我们假设以浏览器作为客户端

  (1) 用户做出了一个操作,可以是填写网址敲回车,可以是点击链接,可以是点击按键等,接着浏览器获取了该事件。

  (2) 浏览器与对端服务程序建立TCP连接。

  (3) 浏览器将用户的事件按照HTTP协议格式**打包成一个数据包,其实质就是在待发送缓冲区中的一段有着HTTP协议格式的字节流。

  (4) 浏览器确认对端可写,并将该数据包推入Internet,该包经过网络最终递交到对端服务程序。

  (5) 服务端程序拿到该数据包后,同样以HTTP协议格式解包,然后解析客户端的意图。

  (6) 得知客户端意图后,进行分类处理,或是提供某种文件、或是处理数据。

  (7) 将结果装入缓冲区,或是HTML文件、或是一张图片等。

  (8) 按照HTTP协议格式将(7)中的数据打包

  (9) 服务器确认对端可写,并将该数据包推入Internet,该包经过网络最终递交到客户端。

  (10) 浏览器拿到包后,以HTTP协议格式解包,然后解析数据,假设是HTML文件。

  (11) 浏览器将HTML文件展示在页面

  以上为Web服务器工作基本原理。其实不难发现,这仅仅只是一个简单的网络通信。我们应该深信,作为一个服务器,其根本的工作无非有三个

  1.接收数据 2.发送数据 3.数据处理

  而Web服务器的本质就是 接收数据 ⇒ HTTP解析 ⇒ 逻辑处理 ⇒ HTTP封包 ⇒ 发送数据

  高级的服务器无非就是将这三个部分更加细致的设计了。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分