开发者社区> 问答> 正文

【每日一教程6.16】教你正确选择环境LNMPA与LNMP,HHVM性能比拼


Apache和Nginx是当今最流行的两个Web服务器软件,Apache用户基础大,稳定,各种兼容。但是Nginx与其相比,在高并发下nginx能保持低资源低消耗,支持更多的并发连接,体现更高的效率,所以很多人愿意使用Nginx来作Web服务器。 HHVM安装使用教程

但是Nginx也有劣势,虽然在静态的反向方面Nginx表现优秀,但是在处理PHP动态请求方面不如Apache,并且在操作使用方面不如Apache方便,例如Wordpress一些插件就只能在Apache上起作用。Nginx一个最常见的问题出现访问502错误。


事实上很大型的网站都是采用Nginx前端Apache后端的服务器架构,这样可以很好地结合了Nginx高并发和静态页面高效率以及Apache稳定的动态页面处理特点,再也不用担心Nginx以FastCGI模式运行PHP时的502问题和Apache处理静态页面过慢、负载过高的问题。


本篇文章将介绍Nginx前端Apache后端服务器LNMPA配置方法,同时采用简单的服务器压力测试比较一下LNMPA、LNMP、HHVM性能表现的优异。
[attachment=77339]


配置Nginx前端Apache后端服务器LNMPA-与LNMP,HHVM性能比拼


一、Nginx前端Apache后端LNMPA一键快速安装


1、Nginx前端Apache后端的操作流程是在服务器上安装好Nginx和Apache,让Nginx监听80端口,Apache监听非80端口,让Nginx过滤PHP请求给Apache处理,而Nginx只负载前台的静态页面请求处理。
LNMPA_17
2、Nginx前端Apache后端配置起来点复杂,不想折腾的朋友可以直接使用Nginx前端Apache后端服务器LNMPA一键安装包:
1、官方网站: http://lnmp.org/lnmpa.html
3、LNMPA是LNMP的扩展,需要先按LNMP安装教程安装好LNMP后,在LNMP压缩包解压后的目录里再执行./apache.sh 开始安装。LNMP相信大家已经非常地熟悉了,新版的LNMP集成了Redis、OPcache、MariaDB等新的特性。安装时增加MariaDB选项。
[attachment=77340][attachment=77341]
5、LNMP安装成功后可以在探针中看到服务器引擎是Nginx。
6、在LNMP上安装好Wordpress后占用内存大概是170MB,测试环境是阿里云服务器,内存为512MB,CPU为1核。
7、进入LNMP压缩包解压后的目录里再执行./apache.sh 开始安装
8、会提示输入邮箱,回车确认后将会自动开始安装。低于1G内存不建议使用LNMPA,升级到LNMPA后无法降回LNMP。
9、看到如下提示就表示Nginx前端Apache后端服务器LNMPA安装成功了。
11、探针中显示的服务器引擎已经变成了Apache。
12、LNMPA添加虚拟主机:/root/vhost.sh  。删除虚拟主机,ssh执行:rm /usr/local/nginx/conf/vhost/域名.conf 同时需要:rm /usr/local/apache/conf/vhost/域名.conf 。升级LNMPA PHP版本:LNMP压缩包解压后的目录里执行:./upgrade_lnmpa_php.sh
------------------------------------------------------------我是分割线--------------------------------------------------------------------------
                                                                     楼下继续!

展开
收起
李逵 2015-06-16 03:35:26 12960 0
8 条回答
写回答
取消 提交回答
  • Re【每日一教程6.16】教你正确选择环境LNMPA与LNMPHHVM性能比拼
    这种方式没可比
    1.硬件
    2.webbench的片面性
    3.测试的并发数

    还有就是webbench 全是长链接,这说明什么? 还有就是并发数? 30秒3万并发试试?
    最后还有测试的软件片面性,只有这几种,把cherokee 等等加进去看看?
    最后说下,就象鲁大师测试硬件一样,有的硬件适合跑分,但是分高不代表是最强的



    这是我很早以前的一个常见web server的简单测试总会,当然还有各种程序测试的时候占用资源的详细资料,有的程序在测试的时候占用内存大,而有的占用 cpu大,总体来说nginx相当优秀但是占用内存比较大,相同并发下cherokee占用内存和cpu是最小的


    至于apache+nginx 的性能我更不敢苟同了,基本上apache相对nginx和cherokee的承受能力是最小的,大并发下apache+nginx的组合还不如单纯使用nginx或者cherokee,甚至连国产的kangle和jexus都不如

    想提高并发,减低系统资源占用,提高速度,可以用varnish做前端,后端不管是什么,都有质的飞跃
    2015-06-22 17:26:35
    赞同 展开评论 打赏
  • 好贴好贴。
    2015-06-22 13:23:30
    赞同 展开评论 打赏
  • 支持了
    2015-06-19 18:14:17
    赞同 展开评论 打赏
  • LT是个伪程序员
    支持新版主佳作~~~~
    2015-06-19 11:13:04
    赞同 展开评论 打赏
  • 厉害。。。。。。。。。。
    2015-06-17 14:25:47
    赞同 展开评论 打赏
  • 回楼主李逵的帖子


    俺打算直接用Lnmp就够了.

    然后全部弄静态的跑. 同时开了Opcache 与me

    后面流量大了多买两台做个负载均衡. 一直觉得阿里的CDN跟负载均衡老贵了.带宽升级老贵了.

    -------------------------

    回9楼李逵的帖子
    那不是跟EA有冲突么?

    目前只装了OP, 内存现在比较小.所以没装ME
    2015-06-16 10:13:38
    赞同 展开评论 打赏
  • rhce认证 擅长Linux内核编译 Vmware Esxi底层开发 私有云架构
    二、LNMPA与LNMP服务器性能比较
    1、在同样的VPS主机配置上,安装运行Wordpress,测试方法采用简单的压力测试:网站服务器压力Web性能测试


    2、在LNMP环境下,Webbench在10秒内同时发起10个连接请求,显示结果是510页面/分钟,95083 字节/秒。


    3、此时查看到的VPS负载最高是5。


    4、继续将连接增加到20个,此时服务器是648页面/分钟,110336 字节/秒。


    5、观察到此刻服务器负载最高是11。


    6、继续将连接增加到50个,此时服务器是930页面/分钟,135096 字节/秒。


    7、此时系统负载最高是22。


    8、在Nginx前端Apache后端服务器LNMPA情况下,10个连接,显示是240页面/分钟,48392字节/秒。


    9、此时服务器负载压力显示为2.3,比LNMP时的5少了近一半。


    10、增加到了20个连接后,显示为300页面/分钟,54131字节/秒。


    ----------------------------------------------------------------------
    未完待续

    -------------------------

    11、此时服务器负载压力显示为3.84,比LNMP时的11少了近2/3。

    12、将连接增加到了50个后,服务器显示为288页面/分钟,58070字节/秒。

    13、此时VPS的压力值为8,比LNMP环境少了近3/5。


    -------------------------

    三、LNMPA与HHVM性能比拼
    三、LNMPA与HHVM性能比拼
    1、HHVM是由著名脸谱公司开发的PHP虚拟机,安装教程: HHVM安装使用教程-高效的PHP运行环
    2、当我把连接增加到200个时,LNMPA环境下的VPS显示4050页面/分钟,620411字节/秒。
    [attachment=77536]
    3、系统负载压力最向达到170,并且直接宕机。
    [attachment=77535]
    4、而在HHVM环境下,当连接是10个时,服务器是481548页面/分钟,2905267字节/秒。请注意该数值几值是100倍以上
    [attachment=77538]
    5、而服务器压力仅为1.3,是LNMPA环境下的一半,LNMP环境下的1/5。
    [attachment=77537]
    6、当我把连接增加到200后,HHVM环境显示520920页面/分钟,3142449字节/秒。
    [attachment=77541]
    7、而VPS主机的系统负载是28,且服务器仍然可以正常被访问。
    [attachment=77540]
    四、Nginx前端Apache后端服务器LNMPA安装使用小结

    1、LNMPA官方建议服务器的内存最少在1GB以上,本篇文章Freehaoya用的是阿里云的512MB单核CPU主机,可能没有发挥出LNMPA的优势,但是从与LNMP的对比中仍然可以看出LNMPA的架构存在一定的优势。

    2、但是这种“优势”在HHVM面前突然变得那么“渺小”了,512Mb的VPS主机上,从Webbench测试的结果就能看出HHVM在处理请求时的能力有多强,而系统负载居然没有超过30。追求速度的朋友抛弃LNMP直接用HHVM吧。

    -------------------------

    占楼待续

    -------------------------

    占楼待续

    -------------------------

    占楼待续

    -------------------------

    回 8楼(海曼) 的帖子
    opcache和memcached好像会有冲突哦!

    -------------------------

    回 11楼(海曼) 的帖子
    memcached要比opcache好!因为opencache是默认在lanmp环境中有的,php5.4+自带的

    -------------------------

    回 17楼(买醉) 的帖子
    谢谢提醒!大师加个好友!
    2015-06-16 03:55:25
    赞同 展开评论 打赏
  • 占位支持一下
    2015-06-16 03:36:25
    赞同 展开评论 打赏
滑动查看更多
问答排行榜
最热
最新

相关电子书

更多
PHP与APM_技术内幕和最佳实践 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载