Web 服务器



概述

Web服务器是一台存储Web内容的计算机。基本上,Web服务器用于托管网站,但也存在其他类型的Web服务器,例如游戏服务器、存储服务器、FTP服务器、邮件服务器等。

网站是由网页组成的集合,而Web服务器是一种响应Web资源请求的软件。

Web服务器工作原理

Web服务器通过以下两种方式之一响应客户端请求:

  • 将与请求的URL关联的文件发送到客户端。

  • 通过调用脚本并与数据库通信来生成响应。

internet_technologies_tutorial

关键点

  • 当客户端请求一个网页时,Web服务器会搜索请求的页面;如果找到请求的页面,它将使用HTTP响应将其发送到客户端。

  • 如果找不到请求的网页,Web服务器将发送HTTP响应:错误404 未找到。

  • 如果客户端请求其他资源,Web服务器将联系应用程序服务器和数据存储区来构建HTTP响应。

架构

Web服务器架构遵循以下两种方法:

  1. 并发方法

  2. 单进程事件驱动方法。

并发方法

并发方法允许Web服务器同时处理多个客户端请求。这可以通过以下方法实现:

  • 多进程

  • 多线程

  • 混合方法。

多进程

在这种方法中,单个进程(父进程)启动多个单线程子进程,并将传入的请求分配给这些子进程。每个子进程负责处理单个请求。

父进程负责监控负载并决定是否应终止或派生进程。

多线程

与多进程不同,它创建多个单线程进程。

混合方法

这是上述两种方法的组合。在这种方法中,创建多个进程,每个进程启动多个线程。每个线程处理一个连接。在单个进程中使用多个线程可以减少对系统资源的负载。

示例

下表描述了当今最流行的Web服务器:

序号Web服务器描述
1Apache HTTP服务器
这是世界上最流行的Web服务器,由Apache软件基金会开发。Apache Web服务器是一个开源软件,几乎可以安装在所有操作系统上,包括Linux、UNIX、Windows、FreeBSD、Mac OS X等等。大约60%的Web服务器机器运行Apache Web服务器。
2.互联网信息服务 (IIS)
互联网信息服务器 (IIS) 是微软公司的高性能Web服务器。此Web服务器运行在Windows NT/2000和2003平台上(也可能运行在即将推出的新Windows版本上)。IIS与Windows NT/2000和2003捆绑在一起;由于IIS与操作系统紧密集成,因此相对易于管理。
3.Lighttpd
Lighttpd(发音为lighty)也是一个免费的Web服务器,与FreeBSD操作系统一起分发。这个开源Web服务器速度快、安全且消耗的CPU功率更低。Lighttpd也可以在Windows、Mac OS X、Linux和Solaris操作系统上运行。
4.Sun Java系统Web服务器
Sun Microsystems的这款Web服务器适合中型和大型网站。虽然该服务器是免费的,但它不是开源的。但是,它可以在Windows、Linux和UNIX平台上运行。Sun Java系统Web服务器支持Web 2.0所需的各种语言、脚本和技术,例如JSP、Java Servlet、PHP、Perl、Python和Ruby on Rails、ASP和Coldfusion等。
5.Jigsaw服务器
Jigsaw(W3C的服务器)来自万维网联盟。它是开源且免费的,可以在各种平台上运行,例如Linux、UNIX、Windows和Mac OS X Free BSD等。Jigsaw是用Java编写的,可以运行CGI脚本和PHP程序。
广告