Nginx和Apache都是流行的开源Web服务器。Apache是世界使用排名第一的Web服务器软件,是Apache软件基金会的一个开源Web服务器,几乎所有的计算机平台都可以运行,由于其开放的API接口,使得Apache有超多的模块,基本想到的都可以找到;加之历史悠久,因此相关文档齐全,因此,长期雄踞Web服务器市场的巅峰。

2014-12-31 10:33| 发布者:
digitser| 查看: 澳门新葡萄京所有网站,5618|
评论: 0|原作者: liangsheng

WEB服务器也可以称为网站服务器,可以用来放置网站文件,供用户浏览。那么常见的WEB服务器有哪些呢?

而Nginx最初是俄罗斯程序员Igor
Sysoev开发的轻量级开源Web服务器,同时也是一个反向代理服务器和电子邮件代理服务器,并在一个BSD-like协议下发行。

摘要: LNMP 与 LAMP 架构的区别及配置解决方案 LNMP 的通用含义是:Linux
系统下 Nginx + MySQL + Perl/PHP/Python 这种动态网站服务器架构。 LNMP
中的 4 个软件均为免费开源软件。组合在一起,形成了一个免费、高效、扩 …

web服务器有哪些

澳门新葡萄京所有网站 1

LNMP 与 LAMP 架构的区别及配置解决方案

①Apache

Apache是顶级的Web服务器,但是Nginx持续增长,而Microsoft
IIS几十年来首次下降到10%以下。

LNMP 的通用含义是:Linux 系统下 Nginx + MySQL + Perl/PHP/Python
这种动态网站服务器架构。

Apache是世界使用排名的Web服务器软件。它几乎可以运行在所有的计算机平台上。由于Apache是开源免费的,因此有很多人参与到新功能的开发设计,不断对其进行完善。 
Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。

用户自然会关心,Nginx会不会取代Apache,以及何时能取代Apache?Nginx首席执行官Gus
Robertson近日就表示,这两者的使用场景并不同,并不存在谁取代谁的问题。

澳门新葡萄京所有网站 2

②IIS

Nginx已经成为第二大Web服务器。它很久以前就超越了微软的Internet
Information
Services(IIS),长期以来,它一直逼近顶级Web服务器Apache。但是,Nginx首席执行官Gus
Roberston在接受采访时表示,Apache和Nginx的用户范围并不相同。

LNMP 中的 4
个软件均为免费开源软件。组合在一起,形成了一个免费、高效、扩展性强的动态网站服务系统。

IIS(Internet信息服务)英文Internet Information 
Server的缩写。它是微软公司主推的服务器。IIS的特点具有:安全性,强大,灵活。

Robertson表示:“我认为Apache是一个卓越的Web服务器。但Nginx和它不是一个相同的使用案例。我们不认为Apache是一个竞争对手,我们的客户使用Nginx来替换硬件负载均衡和构建微服务,这两者都不是Apache干的事。”

1、 Linux 是类 Unix
计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo
等。

③Nginx

事实上,Roberston发现许多用户同时使用两个开源Web服务器,他说,客户在Apache的前端使用Nginx进行负载平衡和应用,它们的架构完全不同,可以提供更好的并发性能。他还表示,在云配置方面,Nginx表现会更好。

2、 Nginx 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP
代理服务器。

Nginx不仅是一个小巧且高效的HTTP服务器,也可以做一个高效的负载均衡反向代理,通过它接受用户的请求并分发到多个Mongrel进程可以极大提高Rails应用的并发能力。

Roberston总结道:“我们(Nginx)是唯一仍在增长的Web服务器,而其他Web服务器正在萎缩。”

3、 Mysql 是一个小型关系型数据库管理系统。

④Tomcat

然而这不是事实。根据10月份Netcraft的Web服务器调查,Apache本月活跃网站增长最多,获得180万;而Nginx增长40万,仅次于Apache。

4、 PHP 是一种在服务器端执行的嵌入 HTML 文档的脚本语言。

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 
项目中的一个核心项目,由Apache、Sun
和其他一些公司及个人共同开发而成。Tomcat
技术先进、性能稳定,而且免费,因而深受Java 
爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web
应用服务器。

这些增长,加上微软损失的120万活跃网站,导致微软的活跃网站份额下降到9.27%,首次跌至10%以下。Apache在市场份额提高了0.19%,并继续占据主导地位,现在拥有46.30%的活跃网站。尽管如此,多年来Apache一直在慢慢下降,而Nginx现在只有19%。

Python(英语发音:/ˈpaɪθən/)是一种面向对象、解释型计算机程序设计语言,由
Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991
年。Python
语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是
C/C++)很轻松地联结在一起。

⑤Lighttpd

目前,Nginx的开发人员正在继续改进开放核心商业网络服务器Nginx
Plus,以求提高其竞争力。Web服务器使用最新版本的Nginx
Plus Release
11(R11),更易于扩展和自定义,并支持更广泛的部署。

Perl 最初的设计者为拉里·沃尔(Larry Wall),他于 1987 年 12 月 18
日发表。Perl 借用了 C、sed、awk、shell scripting
以及很多其他程序语言的特性。其中最重要的特性是它内部集成了正则表达式的功能,以及巨大的第三方代码库
CPAN。

Lighttpd是由德国人 Jan Kneschke
领导开发的,基于BSD许可的开源WEB服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web 
server环境。具有非常低的内存开销,CPU占用率低,效能好,以及丰富的模块等特点。支持FastCGI,
CGI, Auth, 输出压缩(output  compress), URL重写, Alias等重要功能。

最大的提升是动态模块(dynamic
modules)的二进制兼容性。这意味着为开源Nginx软件编译的动态模块可以加载到Nginx
Plus中。

Nginx 特性

⑥Zeus

还意味着开发人员可以利用大量的第三方Nginx模块来扩展和添加功能到Nginx
Plus,从一系列开源模块到商业模块。开发人员可以基于支持的Nginx
Plus核心创建自定义扩展、附加组件和新产品。

Nginx 是一款小巧且高效的 Linux下 Web 服务器软件。由 Igor Sysoev
为俄罗斯访问量第二的 Rambler
站点开发,已在一些俄罗斯大型网站上运行多年,相当稳定。第一公开版本 0.1.0
发布于 2004 年 10 月 4 日。2011 年 6 月 1 日,nginx 1.0.4 发布。

Zeus是一个运行于Unix下的非常的Web
服务器,据说性能超过Apache,是效率的Web 服务器之一。

Nginx Plus R11还增加了其他增强功能:

Nginx
性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少。

  • 改进的TCP/UDP负载平衡:新功能包括SSL服务器名称路由、新的日志功能、附加变量和改进的Proxy协议支持。这些新功能增强了调试功能,使开发者能够支持更广泛的企业应用程序。

  • 通过IP地址更好地进行地理定位:第三方GeoIP2模块现已通过认证,并提供给Nginx
    Plus客户。相比原始GeoIP模块,新版本提供了更为本地化和更丰富的位置详细信息。

  • 增强的nginScript模块:nginScript是基于JavaScript的Nginx
    Plus的下一代配置语言。开发者能使用新功能在Stream(TCP/UDP)模块中即时修改请求和响应数据。

1、相比 Apache,用 Nginx 作为 Web
服务器:使用资源更少,支持更多并发连接,效率更高。

可以预见的是,在这场旷日持久的角逐顶级Web服务器的战争中,Nginx会同Apache进行激烈的竞争。而微软的IIS,则继续缓慢地衰落,走向消亡。

2、作为负载均衡服务器:Nginx 既可在内部直接支持 Rails 和
PHP,也可支持作为 HTTP 代理服务器对外进行服务。Nginx 用 C
编写而成,不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多。

来自:InfoQ

3、作为邮件代理服务器:Nginx
同时也是一款非常优秀的邮件代理服务器(最早开发这个产品的目的之一,是作为邮件代理服务器)。

Nginx 的安装非常简单,配置文件也很简洁(还支持 perl 语法)。Nginx
支持平滑加载新配置,还能够在不间断服务的情况下进行软件版本升级。

澳门新葡萄京所有网站 3

LAMP 就是把 LNMP 中的 Nginx 换成 Apache。

LAMP 的通用含义是:Linux 系统下 Apache + MySQL + Perl/PHP/Python
这种动态网站服务器架构。

随着开源潮流的蓬勃发展,开放源代码的 LAMP 早已与 J2EE 和 .Net
商业软件形成三足鼎立之势。且该架构开发的项目在软件方面的投资成本极低,因此受到整个
IT 界的高度关注。从网站流量上说,70% 以上的访问流量都是 LAMP
提供的。所以说,LAMP 是最强大的动态网站解决方案。

Apache 特性

Apache 是 LAMP 架构最核心的 Web Server,开源、稳定、模块丰富是 Apache
的优势。但 Apache 的缺点是有些臃肿,内存和 CPU
开销大,性能上有损耗,不如一些轻量级的 Web
服务器(譬如:Nginx)高效,轻量级的 Web
服务器对于静态文件的响应能力来说远高于 Apache 服务器。

Apache 做为 Web Server 是负载 PHP 的最佳选择,如果流量很大的话,可以采用
Nginx 来负载非 PHP 的 Web 请求。Nginx 是一个高性能的 HTTP
和反向代理服务器,Nginx
以其稳定、丰富功能集、示例配置文件和低系统资源的消耗而闻名。Nginx
现能支持 PHP 和 FastCGI,也支持负载均衡和容错,可和 Apache
配合使用,是轻量级的 HTTP 服务器的首选。

Web 服务器缓存也有多种方案,Apache
提供了自己的缓存模块,也可以使用外加的 Squid
模块进行缓存,这两种方式均可有效提高 Apache 的访问响应能力。Squid Cache
是一个 Web 缓存服务器,支持高效缓存,可作为网页服务器的前置 cache
服务器缓存相关请求以提高 Web 服务器速度。把 Squid 放在 Apache
的前端来缓存 Web 服务器生成动态内容,而 Web
应用程序只需要适当地设置页面实效时间即可。如访问量巨大,则可考虑使用
memcache 作为分布式缓存。

PHP 的加速可使用 eAccelerator 加速器,eAccelerator 是一个自由开放源码的
PHP 加速器。它会优化动态内容缓存,提高 PHP 脚本缓存性能,使 PHP
脚本在编译状态下,对服务器的开销几乎完全消除。它还可对脚本起优化作用,以加快其执行效率。
使 PHP 程序代码执效率可提高 1-10 倍。

具体动态网站服务器架构解决方案有以下几种:

1、 squid + Apache + PHP + eAccelerator

使用 Apache 负载 PHP,squid 缓存,HTML 或图片请求可直接由 squid
返回给用户。很多大型网站都采用这种架构。

2、 Nginx/Apache + PHP(FastCGI) + eAccelerator

使用 Nginx 或 Apache 负载 PHP,PHP 使用 FastCGI 方式运行,效率较高。

澳门新葡萄京所有网站 4

3、 Nginx + Apache + PHP + eAccelerator

此方案综合了 Nginx 和 Apache 的优点,使用 Apache 负载 PHP,nginx
负责解析其它 Web 请求,使用 Nginx 的 rewrite 模块,Apache
端口不对外开放。

**数据库

**

开源数据库中,MySQL
在性能、稳定性及功能上是首选,可以达到百万级别的数据存储。网站初期可将
MySQL 和 Web 服务器放在一起,但是当访问量达到一定规模后,应该将 MySQL
数据库从 Web Server 上独立出来,在单独的服务器上运行,同时保持 Web
Server 和 MySQL 服务器的稳定连接。

当数据库访问量达到更大级别时,可考虑使用 MySQL Cluster
等数据库集群或者库表散列等解决方案。

总的来说,LAMP 架构的网站性能会远远优于 Windows IIS + ASP +
Access(譬如:月光博客)这样的网站。可以负载访问量也非常大,国内大量个人网站若想支撑大访问量,采用
LAMP 架构是一个不错的方案。当然,首推 LNMP 架构。

综上所述,基于 LAMP
架构设计具有成本低廉、部署灵活、快速开发、安全稳定等特点,是 Web
网络应用和环境的优秀组合。若是服务器配置比较低的个人网站,当然首选 LNMP
架构。