题记:
nginx,resin,squid,lighttpd 这四者之间没有直接的关联;放到一起仅仅是我个人想总结一下自己的知识而已,并无他意!
1 Nginx : http://nginx.net/
一般,大家都用Apache;非一般情况,大家都不用Apache; 而这个用什么的问题完全取决于你的应用需求!
下段内容摘自《Niginx应用技术指南》
总结V1.5 Freeke 整理于 2008-12-12
“
一、Nginx 基础知识
1、简介
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。尽管还是测试版,但是,Nginx 已经因为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名了。更多的请见官方wiki: http://wiki.codemongers.com/NginxChs
2、Nginx的优点
Nginx做为HTTP服务器,有以下几项基本特性: 1.处理静态文件,索引文件以及自动索引;打开文件描述符缓冲. 2.无缓存的反向代理加速,简单的负载均衡和容错.
3、FastCGI,简单的负载均衡和容错.
4、模块化的结构。
包括gzipping, byte ranges, chunked responses, 以及 SSI-filter等filter。如果由FastCGI或其它代理服务器处理单页中存在的多个SSI,则这项处理可以并行运行,而不需要相互等待。
5、支持SSL 和 TLS SNI.
Nginx专为性能优化而开发,性能是其最重要的考量, 实现上非常注重效率 。它支持内核Poll模型,能经受高负载的考验, 有报告表明能支持高达 50,000 个并发连接数。
- Nginx具有很高的稳定性。其它HTTP服务器,当遇到访问的峰值,或者有人恶意发起慢速连接时,也很可能会导致服务器物理内存耗尽频繁交换,失去响应,只能重启服务器。例如当前apache一旦上到200个以上进程,web响应速度就明显非常缓慢了。而Nginx采取了分阶段资源分配技术,使得它的CPU与内存占用率非常低。Nginx官方表示保持10,000个没有活动的连接,它只占2.5M内存,所以类似DOS这样的攻击对Nginx来说基本上是毫无用处的。就稳定性而言, Nginx比lighthttpd更胜一筹。
- Nginx支持热部署。它的启动特别容易, 并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够在不间断服务的情况下,对软件版本进行进行升级。 Nginx采用master-slave模型, 能够充分利用SMP的优势,且能够减少工作进程在磁盘I/O的阻塞延迟。当采用select()/poll()调用时,还可以限制每个进程的连接数。
- Nginx代码质量非常高,代码很规范, 手法成熟, 模块扩展也很容易。
。。。
”
2 Resin http://www.caucho.com/
说到 Resin,就得提一次java的常用WEB服务器:
(1 商业成品,如IBM WebSphere ,BEA WebLogic ... ...以及SUN的相关产品 ; 这些产品因为是商业的,所以有着良好的服务和支持,非常适合实施阶段使用;但他们往往需要配合相关的开发环境才鼻尖适合开发阶段的开发与调试
(2 Tomcat,Resin,Orion,Jetty... 这一类的 ,一般在部署时配合Apache来完成
(3 JBOSS 相关的
Resin
是一个开源的高性能的JAVA
、PHP
服务器,负载平衡功能增加了稳定性。Caucho
的Quercus
技术是可靠的100%JAVA实现的PHP引擎,这样就允许开发者可以把PHP的灵活性和JAVA的稳定性结合起来。
①专业版提供了快速的Servlet
和JSP
引擎,包括代理缓存、增强的JNI性能,分布式会话负载平衡提供了坚固的可靠性;
②开源版在GPL协议下提供了JSP
、Servlet
和EJB
功能;
③Quercus是一个开源的java
实现的PHP 5
语言;
④Caucho
开发了两个小的快速的HTTP服务协议,Hessian
是一个轻量级的自描述的RPC协议。Hessian
现在包含了 Java, PHP, Python, C++, and C# 实现。
网址 http://www.caucho.com
Resin强调使用XML技术,跟tomcat相比,其编码问题处理得很好。
至于Resin的基本配置,以及与Apache的整合,与tomcat的流程基本类似,只要参考文档就可以完成。
3 Squid http://www.squid-cache.org/
对于Web用户来说,Squid是一个高性能的代理缓存服务器,可以加快内部网浏览Internet的速度,提高客户机的
访问命中率。Squid不仅支持HTTP协议,还支持FTP、gopher、SSL和WAIS等协议。和一般的代理缓存软件不同,
Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。
Squid将数据元缓存在内存中,同时也缓存DNS查寻的结果,除此之外,它还支持非模块化的DNS查询,对失败的请求
进行消极缓存。Squid支持SSL,支持访问控制。由于使用了ICP,Squid能够实现重叠的代理阵列,从而最大限度的
节约带宽。
Squid由一个主要的服务程序Squid,一个DNS查询程序 dnsserver,几个重写请求和执行认证的程序,以及几个
管理工具组成。当Squid启动以后,它可以派生出指定数目的dnsserver进程,而每一个dnsserver进程都可以执行
单独的DNS查询,这样一来就大大减少了服务器等待DNS查询的时间。
Squid的另一个优越性在于它使用访问控制清单(ACL)和访问权限清单(ARL)。访问控制清单和访问权限清单通过阻止
特定的网络连接来减少潜在的Internet非法连接,可以使用这些清单来确保内部网的主机无法访问有威胁的或不适宜
的站点。
Squid: Optimising Web Delivery
Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more.
It reduces bandwidth and improves response times by caching and
reusing frequently-requested web pages. Squid has extensive access
controls and makes a great server accelerator. It runs on most available
operating systems, including Windows and is licensed under the GNU GPL.
PS: Varnish 顺便提一下这个东西
Varnish是一款高性能的开源HTTP加速器,挪威最大的在线报纸 Verdens Gang 使用3台Varnish代替了原来的12台Squid,性能比以前更好。
Varnish 的作者Poul-Henning
Kamp是FreeBSD的内核开发者之一,他认为现在的计算机比起1975年已经复杂许多。在1975年时,储存媒介只有两种:内存与硬盘。但现在计算
机系统的内存除了主存外,还包括了CPU内的L1、L2,甚至有L3快取。硬盘上也有自己的快取装置,因此Squid
Cache自行处理物件替换的架构不可能得知这些情况而做到最佳化,但操作系统可以得知这些情况,所以这部份的工作应该交给操作系统处理,这就是
Varnish cache设计架构。
可以参考这个网站的一些文章: http://www.lamppr.com/
4 lighttpd http://www.lighttpd.net/
Security, speed, compliance, and flexibility -- all of these describe lighttpd (pron.
lighty
)
which is rapidly redefining efficiency of a webserver; as it is
designed and optimized for high performance environments. With a small
memory footprint compared to other web-servers, effective management of
the cpu-load, and advanced feature set (FastCGI, SCGI, Auth,
Output-Compression, URL-Rewriting and many more) lighttpd is the
perfect solution for every server that is suffering load problems. And
best of all it's Open Source licensed under the revised BSD license
.
貌似今年来lighttpd很流行; lighttpd和apache一样是开源的,与apache相比,虽然功能不及apache完善,稳定性也不如apache,但是,不管是服务静态页
面,还是服务动态内容(CGI,PHP),它都比apache快,用于ad banner之类的WEB服务器是最恰当不过了
分享到:
相关推荐
**Nginx与Squid负载均衡详解** 在现代互联网架构中,负载均衡扮演着至关重要的角色,它能够有效地分发网络流量,提高系统的可用性和响应速度,同时增强容错能力。Nginx和Squid是两种常用的开源工具,分别以反向代理...
1)资源:linux下nginx离线安装包及相关依赖包; 2)教程:https://blog.csdn.net/hualinger/article/details/125298009?spm=1001.2014.3001.5502
### Linux下Nginx+Tomcat整合的安装与配置详解 在现代的Web服务器架构中,Nginx作为高性能的反向代理服务器和负载均衡器,常被用来与Tomcat等应用服务器配合使用,以提高网站的响应速度、稳定性和安全性。本文将...
【标题】:“基于Linux下Nginx的安装与项目部署详解” 【描述】:本文将详细介绍如何在Linux系统中安装Nginx,并探讨其主要功能,包括反向代理、负载均衡以及项目部署的具体操作。 【标签】:“Nginx”,“Nginx...
以下是 Linux 下 Nginx 的搭建过程和相关知识点: 下载和解压 Nginx 在 Linux 下,下载 Nginx 的源代码并解压到 `/home/admin` 目录下。使用以下命令下载 Nginx: ``` wget ...
在Linux环境下,Nginx是一款广泛应用的开源HTTP服务器和反向代理服务器,以其高效稳定、低内存占用和丰富的模块化设计而备受青睐。本篇将详细介绍如何在Linux系统上安装Nginx,以及进行基本的配置实践。 首先,我们...
1. 安装 Squid:在大多数Linux发行版中,可以通过包管理器(如 apt-get 或 yum)进行安装。 2. 配置 Squid:编辑 `squid.conf` 文件,开启正向代理功能,设置监听端口(如 3128),并定义允许访问的IP范围。 3. 访问...
nginx和squid配合搭建的web服务器
学习心得,分享出来供大家学习。docker镜像构建,中间件mysql、lighttpd、Nginx、squid配置和启动、dubbo服务部署
【标签】"nginx apache squid"这三个标签分别代表了三种重要的Web服务相关技术。Nginx以其高效的非阻塞I/O模型和强大的反向代理功能而闻名,常被用作前端服务器,处理静态内容和分发请求。Apache作为老牌的HTTP...
nginx在linux系统下的安装包,一共有四个:Nginx-1.12.2.tar.gz,zlib-1.2.11.tar.gz,pcre-8.41.tar.gz,openssl-fips-2.0.16.tar.gz没有资源分的也可以到我的另一篇文章中根据链接下载...
linux安装nginx/1.25.2,并配置systemctl管理nginx的启动关闭状态等
在Linux环境下安装Nginx,需要先确保系统已经准备好所有必要的依赖包,这样才能确保Nginx能够正常运行。 首先,我们要知道Linux发行版的不同会影响安装方式和依赖包的选择。常见的Linux发行版如Ubuntu/Debian和...
linux安装nginx并支持ssl,使得服务器支持证书签名,提升应用的安全性
本资源包主要关注在Linux环境下安装和配置Nginx,特别是涉及到“sticky模块”的配置。下面将详细介绍这个过程以及相关知识点。 一、Nginx的安装 1. 更新包列表:在大多数Linux发行版中,首先要确保系统的包列表是...
在Linux环境中,特别是CentOS 7这样的服务器操作系统中,Nginx被广泛用作Web服务器和反向代理,用于实现高可用性和负载均衡。本文将详细介绍如何在Linux上搭建Nginx集群,以及如何进行详细配置,以实现负载均衡功能...
在Linux系统中,Nginx是一款非常流行的开源Web服务器,以其高性能、稳定性和低内存占用而闻名。本文将详细介绍如何使用RPM包在Linux上安装Nginx,以实现高效稳定的Web服务。 首先,了解RPM(Red Hat Package ...
本文将详细介绍如何使用提供的Linux离线环境下Nginx安装包,包括所有必要的依赖环境和安装教程。 Nginx是一款高性能、轻量级的Web服务器和反向代理服务器,它以其高效稳定和低内存占用而闻名。在Linux系统中,Nginx...
本教程将详述如何在没有网络连接的情况下,通过离线安装包在Linux系统上安装Nginx。 首先,我们需要理解Linux系统的基础。Linux是一种类Unix操作系统,它的核心在于命令行接口(CLI),用户通过输入命令来执行各种...