WEB服务器有哪几种?web服务器的工作原理浅析

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服务的工作流程过一遍,我们假设以浏览器作为客户端

(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封包 ⇒ 发送数据

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

以上则是WEB服务器有哪几种?web服务器的工作原理浅析的全部内容,希望对您有所帮助!

本文链接:https://my.lmcjl.com/post/2903.html

展开阅读全文

4 评论

留下您的评论.