web服务器的工作原理及安装配置步骤
一、web服务器的工作原理
1、客户端发送请求
客户端(通过浏览器)和Web服务器建立TCP连接,连接建立以后,向Web服务器发出访问请求(如get)。
2、服务器解析请求
Web服务器对请求按照HTTP协议进行解码来确定进一步的动作,设计的内容有三个要点:方法(GET)、文档(/sample.html)、和浏览器使用的协议(HTTP/1.1)其中方法告诉服务器应完动的动作,GET方法的含义很明显是:服务器应定位、读取文件并将它返回给客户。
3、读取其它信息(非必须步骤)
Web服务器根据需要去读取请求的其它部分。在HTTP/1.1下,客户还应给服务器提供关于它的一些信息。元信息可用来描述浏览器及其能力,以使服务器能据此确定如何返回应答。
4、完成请求的动作
若现在没有错误出现,WWW服务器将执行请求所要求的动作。要获取(GET)一个文档,web服务器在其文档树中搜索请求的文件(/sample.html)。这是由服务器机器上作为操作系统一部分的文件系统完成的。若文件能找到并可正常读取,则服务器将把它返回给客户。
5、关闭文件和网络连接,结束会话。
当文件已被发邮或错误已发出后,web服务器结束整个会话。它关闭打开的的被请求文件,关闭网络端口从而结束网络连接。有关的其它工作则是由客户端来完成的,包括接收数据,并以用户可读的方式呈现出来。这些与服务器无关。
二、web服务器的安装配置过程
以典型的web服务器Tomcat为例,进行安装配置。步骤如下:
1、在tomcat官网上下载tomcat安装版本。
2、将下载的zip包解压。
3、打开解压后的文件夹,进入bin文件夹。
4、双击Tomcat8.exe进行启动。
5、打开浏览器输入http://localhost:8080/,进入tomcat欢迎界面,配置成功。
没有固定,需要看服务器配置高低。
不仅仅是访问量问题,主要是数据,如果站点数据量不是太大。没有太多的查询。一台P4的普通电脑可以承受成千上万的上网用户。(还有带宽问题,比如共享的100兆位。高带宽。在线人数更多)
如果您有一个几百兆字节或几十亿字节的数据库。这是另一回事。服务器的内存必须至少是数据库的3倍才能运行。
无论如何。常见的企业网站。几百米的股票。P4的平台。网上几千个就足够了(没有下载,没有视频)。
扩展资料:
WEB服务器类型:
1,IIS
IIS服务器称为:Internet信息服务。它是微软公司拥有的web服务器,是目前最流行的web服务器产品之一。
2、康乐
Kanglewebserver(Kangle)是一款跨平台、功能强大、安全稳定、易于操作的高性能web服务器和反向代理服务器软件。
3,WebSphere
WebSphereApplicationServer是一个功能齐全的开放Web应用程序服务器,它是IBM电子商务计划的核心部分。它是一个基于java的应用程序环境,用于构建、部署和管理Internet和IntranetWeb应用程序。
4,WebLogic
BEAWebLogicServer是一个多功能的、基于标准的web应用程序服务器,为企业构建自己的应用程序提供了坚实的基础。
5,Apache
Apache是世界上使用最多的Web服务器,占有大约60%的市场份额。
6,Tomcat
Tomcat是一个开源的基于java的Web应用程序容器,它运行servlet和JSPWeb应用程序。
7,Jboss
它是一个基于J2EE的开源应用服务器。JBoss代码是在LGPL下授权的,可以在任何商业应用程序中免费使用,而不需要支付任何费用。
web的工作原理:
1、用户在浏览器中输入要访问的web站点地址或在已打开的站点点击超链接。
2、由DNS进行域名解析,找到服务器的IP地址,向该地址指向的web服务器发出请求。
3、web服务器根据请求将URL地址转换为页面所在的服务器上的文件全名,查找相应的文件。
4、若URL指向静态文件,则服务器将文件通过http协议传输给用户浏览器;若HTML文档中嵌入了ASP,PHP,JSP等程序,则由服务器直接运行后返回给用户;
如果web服务器所运行程序包含对数据库的访问,服务器会将查询指令发送给数据库服务器,对数据库执行查询操作,查询结果由数据库返回给web服务器,再由web服务器将结果潜入页面,并以html格式发送给浏览器。
5、浏览器解释html文档,在客户端屏幕上展示结果。
扩展资料
web的特点
1、图形化
Web 非常流行的一个很重要的原因就在于它可以在一页上同时显示色彩丰富的图形和文本的性能。在Web之前Internet上的信息只有文本形式。Web可以提供将图形、音频、视频信息集合于一体的特性。
2、与平台无关
无论用户的系统平台是什么,你都可以通过Internet访问WWW。浏览WWW对系统平台没有什么限制。无论从Windows平台、UNIX平台、Macintosh等平台我们都可以访问WWW。
3、分布式的
大量的图形、音频和视频信息会占用相当大的磁盘空间,我们甚至无法预知信息的多少。对于Web没有必要把所有信息都放在一起,信息可以放在不同的站点上,只需要在浏览器中指明这个站点就可以了。
4、动态的
由于各Web站点的信息包含站点本身的信息,信息的提供者可以经常对站上的信息进行更新。如某个协议的发展状况,公司的广告等等。一般各信息站点都尽量保证信息的时间性。所以Web站点上的信息是动态的、经常更新的,这一点是由信息的提供者保证的。
5、交互的
Web的交互性首先表现在它的超链接上,用户的浏览顺序和所到站点完全由他自己决定。另外通过FORM的形式可以从服务器方获得动态的信息。用户通过填写FORM可以向服务器提交请求,服务器可以根据用户的请求返回相应信息。
linux上WEB主要基于Apache,Apache是一个很不错的自由软件,它的功能非常强的,web只是它的一个功能。但是目前主要用它来做web,世界上60-70%网站都是基于Apache,由于Linux比较稳定等一系列原因。所以一般都基于Linux平台。
国内外研究现状和发展趋势这个比较难说 呵呵 对应Apache来说,将更多应用于Linux体系吧。
常见的WEB服务器有:
1、ApacheApache是世界使用排名第一的Web服务器软件。
它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。
2、IIS是英文InternetInformationServer的缩写,译成中文就是\"Internet信息服务\"的意思。
它是微软公司主推的服务器,最新的版本是Windows2008里面包含的IIS7,IIS与WindowServer完全集成在一起,因而用户能够利用WindowsServer和NTFS(NTFileSystem,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet和Intranet站点。
3、GFEGoogle的web服务器,用户数量激增。目前紧逼iis。
4、Nginx不仅是一个小巧且高效的HTTP服务器,也可以做一个高效的负载均衡反向代理,通过它接受用户的请求并分发到多个Mongrel进程可以极大提高Rails应用的并发能力。
5、Lighttpd
是由德国人JanKneschke领导开发的,基于BSD许可的开源WEB服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的webserver环境。具有非常低的内存开销,CPU占用率低,效能好,以及丰富的模块等特点。
Lighttpd是众多OpenSource轻量级的webserver中较为优秀的一个。支持FastCGI,CGI,Auth,输出压缩(outputcompress),URL重写,Alias等重要功能。
6、Zeus是一个运行于Unix下的非常优秀的WebServer,据说性能超过Apache,是效率最高的WebServer之一。
7、Sun的Java系统Web服务器也就是以前的SunONEWebServer。主要出现在那些运行Sun的Solaris操作系统的关键任务级Web服务器上。
它最新的版本号是61,可以支持x86版本Solaris,RedHatLinux,HP-UX11i,IBMAIX,甚至可以支持Windows,但它的大多数用户都选择了SPARC版本的Solaris操作系统。
8、Resin提供了最快的jsp/servlets运行平台。在java和javascript的支持下,Resin可以为任务灵活选用合适的开发语言。Resin的一种先进的语言XSL(XMLstylesheetlanguage)可以使得形式和内容相分离。
扩展资料:
1、Apache服务器优缺点:
优点:小巧,灵活,可扩展,稳定;
缺点:软件开源,所以很多的漏洞可能很容易被人查找到。
2、Nginx服务器优缺点:
优点:压缩率高,支持负载均衡,速度快;
缺点:需要掌握熟练的Linux命令才能应用;
3、IIS服务器优缺点:
优点:安装配置简单,学习起来容易;
缺点:平台适用性单一,安全性有待提高。
4、WebLogic服务器优缺点:
优点:安全性高,专业性强,耦合度低;
缺点:不容易掌握,需要有一定的专业积累才能熟练应用。
1 Tomcat
Tomcat是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。Tomcat Server是根据servlet和JSP规范进行执行的,因此我们就可以说Tomcat Server也实行了Apache-Jakarta规范且比绝大多数商业应用软件服务器要好。
Tomcat是Java Servlet22和JavaServerPages 11技术的标准实现,是基于Apache许可证下开发的自由软件。Tomcat是完全重写的Servlet API 22和JSP 11兼容的Servlet/JSP容器。Tomcat使用了JServ的一些代码,特别是Apache服务适配器。随着Catalina Servlet引擎的出现,Tomcat第四版号的性能得到提升,使得它成为一个值得考虑的Servlet/JSP容器,因此目前许多WEB服务器都是采用Tomcat。
2 JBOSS
JBoss是全世界开发者共同努力的成果,一个基于J2EE的开放源代码的应用服务器。 因为JBoss代码遵循LGPL许可,你可以在任何商业应用中免费使用它,而不用支付费用。 JBoss是一个管理EJB的容器和服务器,支持EJB 11、EJB 20和EJB30的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。
3 IBM WebSphere
WebSphere软件平台能够帮助客户在Web上创建自己的业务或将自己的业务扩展到Web上,为客户提供了一个可靠、可扩展、跨平台的解决方案。作为IBM电子商务应用框架的一个关键组成部分,WebSphere软件平台为客户提供了一个使其能够充分利用Internet的集成解决方案。
WebSphere软件平台提供了一整套全面的集成电子商务软件解决方案。作为一种基于行业标准的平台,它拥有足够的灵活性,能够适应市场的波动和商业目标的变化。它能够创建、部署、管理、扩展出强大、可移植、与众不同的电子商务应用,所有这些内容在必要时都可以与现有的传统应用实现集成。以这一稳固的平台为基础,客户可以将不同的IT环境集成在一起,从而能够最大程度地利用现有的投资。
WebSphere 针对以 Web 为中心的开发人员,他们都是在基本 HTTP服务器和 CGI 编程技术上成长起来的。IBM 将提供 WebSphere 产品系列,通过提供综合资源、可重复使用的组件、功能强大并易于使用的工具、以及支持 HTTP 和 IIOP 通信的可伸缩运行时环境,来帮助这些用户从简单的 Web 应用程序转移到电子商务世界。
4 BEA WebLogic
BEA WebLogic Server 是一种多功能、基于标准的web应用服务器,为企业构建自己的应用提供了坚实的基础。各种应用开发、部署所有关键性的任务,无论是集成各种系统和数据库,还是提交服务、跨 Internet 协作,起始点都是 BEA WebLogic Server。由于 它具有全面的功能、对开放标准的遵从性、多层架构、支持基于组件的开发,基于Internet 的企业都选择它来开发、部署最佳的应用。
BEA WebLogic Server 在使应用服务器成为企业应用架构的基础方面继续处于领先地位。BEAWebLogic Server 为构建集成化的企业级应用提供了稳固的基础,它们以 Internet 的容量和速度,在连网的企业之间共享信息、提交服务,实现协作自动化。BEA WebLogic Server 的遵从 J2EE 、面向服务的架构,以及丰富的工具集支持,便于实现业务逻辑、数据和表达的分离,提供开发和部署各种业务驱动应用所必需的底层核心功能。
5 Apache
Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美。
Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,世界上很多著名的网站都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面。
6 IIS
Microsoft的Web服务器产品为InternetInformation Server (IIS), IIS 是允许在公共Intranet或Internet上发布信息的Web服务器。IIS是目前最流行的Web服务器产品之一,很多著名的网站都是建立在IIS的平台上。IIS提供了一个图形界面的管理工具,称为 Internet服务管理器,可用于监视配置和控制Internet服务。
IIS是一种Web服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面,它使得在网络(包括互联网和局域网)上发布信息成了一件很容易的事。它提供ISAPI(IntranetServer API)作为扩展Web服务器功能的编程接口;同时它还提供一个Internet数据库连接器,可以实现对数据库的查询和更新。
(ASP、net开发的程序一般只能在IIS上运行。)
以上服务器:Tomcat、jboss、 Apache属于开源的软件,同时可以免费使用,IIS是由微软Windows操作系统捆绑的软件,虽然代码没有开源,也属于免费的。Weblogic(BEA公司)和WebSphere(IBM)是属于商业大型应用的软件,如果客户需求上需要、且预算充分的话可以考虑的。
0条评论