LAMP与LNMP架构的区别及其具体的选择说明

LAMP与LNMP架构的区别及其具体的选择说明

LAMP==Linux+Apache+Mysql+PHP
LNMP==Linux+Nginx+Mysql+PHP

以上两只架构是目前网站的主流架构

LAMP和LNMP最主要的区别在于:


一个使用的是Apache,一个使用的是Nginx。



我们就来说说Apache


Apache是世界是用排名第一的Web服务器软件,其几乎可以在所有广泛使用的计算机平台上运营,由于其跨平台和安全性被广泛使用,是最流行的Web服务端软件之一。

相比于nginx,apache有些臃肿,内存和CPU开销较大,性能上有损耗,nginx对于静态文件的响应能力远高apache。

Apache是负载PHP的最佳选择,如果流量很大的话,可以使用nginx来负载非PHP的Web请求。在整个IT界而言,70%的流量访问均来源于Apache。

下面说说Nginx

Nginx是一款高性能额Http和反向代理服务器,也是一个AMAP/POP3/SMTP服务器,Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日,2011年6月1日,nginx 1.0.4发布。

相比于Apache,nginx使用资源更少,支持更多并发连接,效率更高,作为负载均衡服务器。nginx即可对内进行支持,也可对外进行服务。其还是一款非常优秀的邮件代理服务器,安装简单,配置简介

LNMP是Linux+Nginx+Mysql+PHP的组合方式,其特点是利用Nginx的快速与轻量级,替代以前的LAMP(Linux+Apache+Mysql+PHP)的方式。由于安装方便,并且安装脚本也随时更新。

LNMP方式的优点:占用VPS资源较少,Nginx配置起来也比较简单,利用fast-cgi的方式动态解析PHP脚本。

LNMP方式的缺点:php-fpm组件的负载能力有限,在访问量巨大的时候,php-fpm进程容易僵死,容易发生502 bad gateway错误

综上所述:

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



当然,在大流量的时候。把Apache和Nginx结合起来使用,也不失为一个不错选择,如下:

LNAMP是Linux+Nginx+Apache+Mysql+PHP的组合方式,其特点是利用Nginx来作为静态脚本的解析,而利用 Nginx的转发特性,将动态脚本的解析转交给Apache来处理,这样,能充分利用两种Web服务器的特点,对于访问量需求较大的站点来说,是一个很不错的选择。

LNAMP方式的优点:由于Apache本身处理PHP的能力比起php-fpm要强,所以不容易出现类似502 bad gateway的错误。适合访问量较大的站点使用。

LNAMP方式的缺点:相比LNMP方式会多占用一些资源,另外,配置虚拟主机需要同时修改Nginx和Apache的配置文件,要稍微麻烦一些

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114115.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【原创】婚前男女必看的一本好书 —— 《男人这东西》 BY:渡边淳一

    【原创】婚前男女必看的一本好书 —— 《男人这东西》 BY:渡边淳一

    2021年8月16日
    88
  • Script failed for StoredProcedure ‘………’ Index was outside the bounds of the array.(Microsof…

    Script failed for StoredProcedure ‘………’ Index was outside the bounds of the array.(Microsof…本地数据库远程登陆数据库服务器,右击存储过程,报错如下:原因:本地数据库版本2008R2,但服务器数据库版本2012,版本不一致导致的。转载于:https://www.cnblogs.com/vitaminC/p/6907827.html…

    2022年7月26日
    11
  • 蓝牙中的sbc_蓝牙sbc格式和aac差别

    蓝牙中的sbc_蓝牙sbc格式和aac差别在之前《小米的试用哲学:小米AirDots青春版和Redmi红米AirDots无线耳机体验》中,我提到了这两款耳机都支持aptXHD。不过在这两款耳机上,也仅仅支持了aptXHD这个技术,也需要配合高通骁龙手机使用,iOS也就别想了……经过实际测试,这两款耳机均不支持aptXHD技术,在此更正,并对造成的误解致歉!这两款耳机支持SBC、AAC两种编码。小米AirDots青春版和Redmi红…

    2022年9月11日
    0
  • hashmap底层实现原理和源码分析(python底层源码)

    HashMap是Java开发中常用的集合,那么从我们创建一个空集合到,put添加、get获取元素经历了那些步骤呢?说明:以下源码基于JDK1.7,32位0.HashMap底层的数据结构是数组加链表的形式,存储结构如下图:1.创建一个新的HashMap集合的构造函数://初始默认数组的大小staticfinalintDEFAULT_INITIAL_CAPACITY=1<<…

    2022年4月16日
    45
  • activiti7实战教程(二)作图「建议收藏」

    activiti7实战教程(二)作图「建议收藏」IDEA:2018.2.2插件:actibpm新建BPMN文件依次拖出需要的组件,最好按照流程的顺序进行拖出,这样后面看xml的时候比较直观。修改每个节点的名称填写每个审批节点的伪码:科室长、分管领导、采购人员、以及网关的伪码表达式这样流程图就做好了。接下来要根据流程图生成XML文件和png图片复制一份流程图,修改名称:后缀名加上20.xml在xml文件上右键到此为止,整个流程图作图就完整的结束了。另外呢告知一点,流程图…

    2022年7月21日
    32
  • 飞鸽传书:谈谈RenderControl手动调用「建议收藏」

    飞鸽传书:谈谈RenderControl手动调用「建议收藏」有些网页需要在后台动态创建服务器控件,并且将控件的html代码写入到指定的HtmlTextWriter.如果仅是调用RenderControl方法能够将服务器控件的html内容输出,但它并不会执行OnPreRender,但是通常服务器控件都重写了OnPreRender方法,实现了许多重要的功能.我们不能将其舍弃啊.

    2022年7月21日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号