统计数据报表正确显示;
超过80%的web应用软件程序和网站都是使用的开源web服务器。在本文中,咱们将介绍目前市场上最流行的5大开源web服务器,并简要回顾它们的历史,技术特性以及更多相关内容,方便你自己能够更加轻松的部署这些流行的web服务器。
根据维基百科介绍,web服务器是“通过请求的程序。
NGINX服务器
Igor Sysoev从2002年开始研究NGINX,并在2004年发布了第一个公开版本。NGINX的研究是为知道决C10K(C10K是如何处理1万个并发连接的简写)问题,目前,全球有超过30%的网站在使用它。
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 要求下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站客户有:百度、京东商城、新浪、网易、腾讯、淘宝等。
NGINX依靠异步事件驱动架构来帮助其处理大量的并发会话,由于其对资源的轻量利用和伸缩自如的特性,它成为了广受欢迎的web服务器。
NGINX在类BSD(Berkeley Software Distribution)许可要求的授权下发布出来的,它不仅可作为web服务器进行部署,也可作为代理服务器或负载均衡器。你可以在NGINX社区网站找到它的更多信息。
NGINX的特点:
服务器
Nginx作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也完全可以支持作为 要好很多。
处理静态文件,索引文件以及自动索引;打开文件描述符缓冲。
无缓存的反向代理加速,简单的负载均衡和容错。
FastCGI,简单的负载均衡和容错。
模块化的结构。包括 gzipping, byte ranges, chunked responses,以及 SSI-filter 等 filter。如果由 FastCG或其它代理服务器处理单页中存在的多个 SSI,则这项处理可以并行运行,而不需要相互等待。
支持 SSL 和 TLSSNI。
代码
Nginx代码完全用C语言从头写成,已经移植到许多体系结构和操作面板系统,包括:Linux、FreeBSD、Solaris、mac OS X、AIX以及Microsoft Windows。Nginx有自己的函数库,并且除了zlib、PCRE和OpenSSL之外,标准模块只使用系统C库函数。而且,如果不需要或者考虑到潜在的授权冲突,可以不使用这些第三方库。
代理服务器
作为邮件代理服务器:Nginx 同时也是一个非常优秀的电子邮件代理服务器(最早研究这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。
Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务器。Nginx 启动非常的容易,并且几乎可以做到7*24不会中断运行,即便运行数个月也不需要重新启动。你还能够不会中断服务的情况下进行应用版本的升级。
Lig服务器
Lig占用率低、效能好以及丰盛的模块等特点。
Lig框架。通过项目主页,你可以找到它的更多信息。
Apache
Apache 服务器。
Apache,中文名:阿帕奇,是Apache应用基金会的一个开放源码的网页服务器,可以在大多数计算机操作面板系统中运行,由于其多平台和安全保障性被广泛大面积使用,是最流行的Web服务器端应用之一。它超快、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。研究者 Apache应用基金会。Apache 。
从1996年开始,Apache 基金会的项目页面上找到它的更多信息。
Apache Tomcat
Apache只支持静态网页,但像php,cgi,jsp等动态网页就需要Tomcat来处理。 Tomcat是由Apache应用基金会下属的Jakarta项目研究的一个Servlet容器,遵从Sun Microsystems提供的技术规范,实现了对Servlet和javaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。由于Tomcat本身也内含了一个并称为网页服务三剑客,可见其应用度之广泛。
Apache Tomcat是在Apache许可证 2.0 版的授权下进行发布出来的,通常用于运行Java应用软件程序。此外,它能够通过Coyote的扩展,扮演为本地文件项目网站。
另外,Apache Tomcat还经常内嵌在其它开源Java应用服务器中,如JBoss, Wildfly和Glassfish。
Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。Apache是以进程为基本的结构,进程要比线程消耗更多的系统开销,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。世界上很多著名的Yahoo!、W3 Consortium、Financial Times等都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的研究小队、支持跨平台的应用(可以运行在几乎所有的Unix、 Windows、Linux系统平台上)以及它的可移植性等方面。
Apache的诞生极富有戏剧性。当NCSA 是你的最佳选择。
Node.js
NNode.js是一个Javascript运行环境(runtime environment),发布于2009年5月,由Ryan Dahl研究,实质是对Chrome V8引擎进行了封装。Node.js对一些特殊用例进行优化,提供替代的API,使得V8在非浏览网址软件环境下运行得更好。
V8引擎执行Javascript的速度非常快,性能非常好。 [1] Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。
相比起其它流行的web服务器,Node.js的不同之处在于它是一个构建网络应用的跨平台运行环境,拥有可胜任异步I/0的事件驱动筑造。这些设计选择能够优化应用软件程序的数据吞吐量和可伸缩性,支持实时通信和网页游戏。 Node.js 还强调了web研究堆栈上的差异,Node.js清楚地显示作为html、 css或者JavaScript堆栈的一部分,在这一点上与Apache或者NGINX同时作为多个不同应用堆栈的一部分的理念正好是相反的。
Node.js是在混合授权要求下发布出来的,更多信息可以查看该项目网站。
在几年的期间里,Node.JS逐渐发展成一个成熟的研究平台,吸引了许多研究者。有许多大型高流量网站都选用Node.JS进行研究,此外,研究人员还可以使用它来研究一些超快移动Web框架。
除了Web应用外,NodeJS也被应用在许多方面,NodeJS在其它方面所研究的十大令人神奇的项目,这些项目涉及到应用软件程序监控、媒体流、远程控制、桌面和移动应用等等。
小贴士
如果你正在寻找一个流行的web服务器,我强烈建议你下载 LAMP(Linux, Apache, mysql, PHP)或者LEMP(Linux, NGINX, MySQL, PHP)配套堆栈。此外,还可以根据根据你自己的不同喜好,更换搭配多种这样的配套堆栈。这种配套堆栈通常都提供了一键安装支持或者Linux上的应用包管理器的安装支持。
原文: 如有侵权 请联系删除
标签: 软件