LAMP和LNMP,你更愿意选择谁,为什么?

LAMP和LNMP,你更愿意选择谁,为什么?

https://www.zhihu.com/question/19697826

http://www.simongong.net

lamp 的全称是linux + apache + mysql +php
lnmp 的全称是linux + nginx + mysql + php (国外喜欢简称为LEMP,搜英文资料需要搜LEMP)

Nginx 特性
Nginx 性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少。
1、相比 Apache,用 Nginx 作为 Web 服务器:使用资源更少,支持更多并发连接,效率更高。
2、作为负载均衡服务器:Nginx 既可在内部直接支持 Rails 和 PHP,也可支持作为 HTTP 代理服务器对外进行服务。Nginx 用 C 编写而成, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多。
3、作为邮件代理服务器:Nginx 同时也是一款非常优秀的邮件代理服务器(最早开发这个产品的目的之一,是作为邮件代理服务器)。

4、反向代理可以根据url将请求转向于不同用途的集群,比如图片请求,转向图片服务器集群;视频请求,转身视频服务器集群。

nginx是一款轻量级的web服务器/反向代理服务器/电子邮件代理服务器,安装非常简单,配置文件也很简洁(还支持 perl 语法)。Nginx 支持平滑加载新配置,还能够在不间断服务的情况下进行软件版本升级。

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

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

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

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

至于安装哪个好呢?
省内存的话lnmp是最好的选择,但似乎不太稳定,有时会比较常502
静态的多用lnmp还是不错的
动态内容多的话,lamp还是最稳定的

小网站估计lamp就够了,访问量大的网站lnmp好点,毕竟Nginx 可承受同时访问量是很大的。

在高并发连接的情况下,Nginx是 Apache 服务器不错的替代品。Nginx同时也可以作为7层

负载均衡服务器来使用。根据我的测试结果,Nginx 0.8.46 + PHP 5.2.14 (FastCGI) 可以承受

3万以上的并发连接数,相当于同等环境下 Apache 的10倍。

lnmp吧,效率高,占用系统资源低,

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

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

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


相关推荐

  • 补码的表示 以及+-0的问题「建议收藏」

    补码的表示 以及+-0的问题「建议收藏」正数的补码是其本身,也就是原码.负数的补码是各位取反后加1.也就是其反码加1.+0的补码就是其原码,也就是说是00000000而已(对于8位来说)-0的补码是其反码加1,其反码是11111111,当然,其反码加1后就是溢出一个进位后,仍然是00000000.问题出现在(+0)和(-0)上,在人们的计算概念中零是没有正负之分的。于是就引入了补码概念。负数的补码就是对反码加一,而正数不…

    2025年5月23日
    3
  • 函数指针和指针函数用法和区别

    函数指针和指针函数用法和区别前言函数指针和指针函数,在学习C语言的时候遇到这两个东西简直头疼,当然还有更头疼的,比如什么函数指针函数、指针函数指针、数组指针、指针数组、函数指针数组等等,描述越长其定义就越复杂,当然理解起来就越难,特别是刚开始学习这门语言的童鞋,估计碰到这些东西就已经要崩溃了,然后好不容易死记硬背下来应付考试或者面试,然后过了几天发现,又是根本不会用,也不知道该在哪些地方用,这就尴尬了。今天这里只…

    2022年6月22日
    24
  • JAVA生成uuid_uuidJDK生成代码

    JAVA生成uuid_uuidJDK生成代码uuid作为通用识别码,其java的实现版本如下,本文以将url(https://blog.csdn.net/renyuanfang/article/details/86701148)转换成uuid为例,实现具体的代码实现importjava.util.UUID;importjava.nio.ByteBuffer;importjava.nio.ByteOrder;impor…

    2022年9月22日
    4
  • vue 如何关闭 eslint 检查

    vue 如何关闭 eslint 检查在实际开发过程中,eslint的作用不可估量,诸如:1.审查代码是否符合编码规范和统一的代码风格;2.审查代码是否存在语法错误;But,对于初学者来说,这个功能极其不友好,各种问题层出不穷,让很多初学者头疼不已,我们有没有办法关掉它,等适当时机在启用它呢,答案是肯定的。不同vuecli版本创建工程的时候,稍微有些差别,要仔细甄别,我的vuecliv4.5.9方案一:vue脚手架创建工程的时候,不要选择Linter/Formatter选项,(那如何选择启用,请参照方案二)

    2022年5月20日
    57
  • 自然语言处理中的Attention机制总结[通俗易懂]

    自然语言处理中的Attention机制总结[通俗易懂]    在面试的过程中被问到了attention,原来虽然其实已经实际用过attention了,也知道个大概原理是加权求和,但是对于加权的具体方法以及权值得分的计算并不是很清晰,面试答的一般,正好最近实习的地方

    2022年7月24日
    9
  • pycharm 重装后双击无反应的一种解决方法

    pycharm 重装后双击无反应的一种解决方法问题描述之前安装的2018版本的pycharm,更新失败之后自动删除,所以重装了一个2020.1,然后发现双击无反应。解决方法用下面方法解决后,记录一下过程:在“添加和删除程序”中发现了pycharm2018版本的程序名,但目录文件已被删除。于是通过注册表编辑器(cmd输入regedit),在编辑→查找中查找pycharm发现了pycharm2018项,将其删除后添加或删除程序里…

    2022年8月26日
    11

发表回复

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

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