当前位置:首页 > 服务器软件 > Lighttpd > squid,nginx,apache几个代理软件的比较转

squid,nginx,apache几个代理软件的比较转

2016-10-08 | 来源:网络 | | 人气: | 关键字:
在并发上,nginx无疑是老大,做反向代理的时候,没有发现squid的并发方面介绍,所以暂且认为ngnix是老大,apache的稳定性有目共睹,但在并发方面的确不是很如意。 缓存方面:squid,apache都支持diskcache和memcach
在并发上,nginx无疑是老大,做反向代理的时候,没有发现squid的并发方面介绍,所以暂且认为ngnix是老大,apache的稳定性有目共睹,但在并发方面的确不是很如意。

缓存方面:squid,apache都支持diskcache和memcache,根据http的head头来确定是否缓存,nginx不支持缓存,不过我在google开源上看见了新浪的水杨老大的一个东东,给nginx加上了文件缓存,不过没有大规模使用,暂时不把它当做一种解决方案。

在代理和缓存的规则上,apache很强,很强大的重写功能,尤其是强制修改http规则,不过这个功能我始终没有调试成功,no-cache的页面始终无法去缓存。

如果只是做网站的反向代理,负载均衡,nginx感觉要比squid强,性能强悍,配置方便。

如果是做代理+缓存加速,那squid的功能和稳定性还是很好的,毕竟在互联网上大量应用。

apache呢?好像没它的事情了。当然不是,有些地方可以拿他的功能当中间件使用,这个等下次分解。

  nginx是一个小巧而高效的Linux下的web服务器软件。Nginx发音为[engine x],是由俄罗斯人Igor Sysoev建立的项目,基于BSD许可。nginx其实已经在一些俄罗斯的大型网站上运行多年,相当的稳定,最近才在美国开始知名起来。

  而另外一个热门的web服务器软件是Lighttpd,因为运行在Youtube的后台,所以知名度很高。Lighttpd特色在于它能做Flash streaming和对fastcgi的支持,这样对于Ruby on Rails之类的程序提速不少,比起Apache要好很多。但是 nginx 要比 Lighttpd 更稳定,功能上并不弱于Lighttpd,差不多什么都有,而且比Lighttpd对于URL rewrite的支持更完善一点。

  但是不管是 nginx 还是 lighttpd, 对于用来提供静态文件都要比Apache好很多很多,主要就是占用的内存小,Apache和这两个小巧的服务器软件来比实在是个庞然大物啊。

  即使是大部分内容动态生成的网站,仍免不了会有一些静态元素,比如图片、JS脚本、CSS等等,所以如果将Squid放在Apache或者Lighttp前端后,反而会使性能下降,毕竟处理HTTP请求是Web服务器的强项。而且已经存在于但内存或者文件系统中的静态内容再在Squid中缓存一下,即浪费内存又浪费了硬盘空间。 因此可以考虑将Lighttpd或者nginx再放在Squid的前面,构成 Lighttpd或者nginx+Squid+Apache的一条处理链,Lighttpd或者nginx在最前面,专门用来处理静态内容的请求,把动态内容请求通过proxy模块转 发给Squid,如果Squid中有该请求的内容且没有过期,则直接返回给Lighttpd或者nginx。新请求或者过期的页面请求交由Apache中Web程序来处 理。经过Lighttpd或者nginx和Squid的两级过滤,Apache需要处理的请求将大大减少,减少了Web应用程序的压力。同时这样的构架,便于把不同的处理分散到多台计算机上进行,由Lighttpd或者nginx在前面统一把关。

  所以,合理的把lighttpd,nginx,apache及Squid结合起来使用,达到的效果是单独使用其中的一项所远远不能及的,把他们组合成一个整体,才能达到最佳的负载能力!

评论

评论数10

表情
发表评论
网友评论仅供其表达个人看法,并不表明网易立场。
《squid,nginx,apache几个代理软件的比较转》更多评论

阅读下一篇

Liunx下的crontab说明

用途 如切割Nginx日志,备份数据库,定时发邮件,同步资源文件等等 crontab命令语法 crontab[-e[UserName]|-l[UserName]|-r[UserName]|-v[UserName]|File] 注意:crontab是用 ... 查看全文

返回Lighttpd 返回网站首页