【转】nginx的优缺点

原博文出自于:http://blog.csdn.net/a454211787/article/details/22494485     感谢!

 

 

1、nginx相对于apache优点: 
轻量级同样起web 服务比apache占用更少内存及资源 
抗并发nginx 处理请求异步非阻塞而apache 则阻塞型高并发下nginx 能保持低资源低消耗高性能 
高度模块化设计编写模块相对简单 
社区活跃各种高性能模块出品迅速啊 
apache 相对于nginx 优点: 

rewrite 比nginx rewrite 强大 
动态页面
模块超多基本想都找 
少bug nginx bug 相对较多 

超稳定 

存理由般来说需要性能web 服务用nginx 需要性能只求稳定apache 吧
者各种功能模块实现得比前者例ssl 模块比前者好配置项多里要注意点epoll(freebsd 上 kqueue )网络
IO 模型nginx 处理性能高根本理由并所有情况下都epoll 大获全胜本身提供静态服务只有寥寥几文
件apache select 模型或许比epoll 更高性能当只根据网络IO 模型原理作假设真正应用还需要实测了再说
 

2、作 Web 服务器:相比 ApacheNginx 使用更少资源支持更多并发连接体现更高效率点
使 Nginx 尤其受虚拟主机提供商欢迎高连接并发情况下NginxApache服务器错替代品: Nginx美国做虚拟主机生
意老板们经常选择软件平台之. 能够支持高达 50,000 并发连接数响应, 感谢Nginx我们选择了 epoll and kqueue 作开发模型. 
Nginx
作负载均衡服务器: Nginx 既内部直接支持 Rails 和 PHP 程序对外进行服务, 也支持作 HTTP代理 服务器对外进行
服务. Nginx采用C进行编写, 论系统资源开销还CPU使用效率都比 Perlbal 要好多. 
作邮件代理服务器: Nginx 同时也非常优秀邮件代理服务器(早开发产品目之也作邮件代理服务器), Last.fm 描述了成功并且美妙使用经验. 
Nginx 
安装非常简单 , 配置文件非常简洁(还能够支持perl语法), Bugs 非常少服务器: Nginx 启动特别容易, 并且几乎做
7*24间断运行即使运行数月也需要重新启动. 还能够间断服务情况下进行软件版本升级 . 

3、Nginx 配置简洁, Apache 复杂 
Nginx 静态处理性能比 Apache 高 3倍上 
Apache 对 PHP 支持比较简单Nginx 需要配合其端用 
Apache 组件比 Nginx 多 
现 Nginx 才 Web 服务器首选 

4、核心区别于apache同步多进程模型连接对应进程;nginx异步多连接(万级别)对应进程 

5、nginx处理静态文件好,耗费内存少.无疑apache仍目前主流,有多丰富特性.所还需要搭配着来.当能确定nginx适合需求,使用nginx会更经济方式. 
apache有先天支持多核心处理负载鸡肋缺点建议使用nginx做前端後端用apache大型网站建议用nginx自代集群功能

6、
从人过往使用情况来看nginx负载能力比apache高多新服务器也改用nginx了而且nginx改完配置能-t测试下配置有没
有问题apache重启时候发现配置出错了会崩溃改时候都会非常小心翼翼现看有好多集群站前端nginx抗并发端apache集群
配合也错

7、nginx处理动态请求鸡肋般动态请求要apache去做nginx只适合静态和反向 

8、从我人经验来看nginx错前端服务器负载性能好老奔上开nginx用webbench模拟10000静态文件请求毫吃力apache对php等语言支持好此外apache有强大支持网路发展时间相对nginx更久

9、
Nginx优于apache主要两点:1.Nginx本身反向代理服务器 2.Nginx支持7层负载均衡;其当Nginx能会比
apache支持更高并发根据NetCraft统计2011年4月统计数据Apache依占有62.71%而Nginx
7.35%因此总得来说Aapche依大部分公司首先因其成熟技术和开发社区已经也非常错性能 

10、对web server需求决定选择大
部分情况下nginx都优于APACHE比说静态文件处理、PHP-CGI支持、反向代理功能、前端Cache、维持连接等等
Apache+PHP(prefork)模式下PHP处理慢或者前端压力大情况下容易出现Apache进程数飙升从而拒绝服务现象 

11、看下nginx lua模块:https://github.com/chaoslaw...apache比nginx多模块直接用lua实现apache流行why大多数人懒得更新nginx或者学新事物 

12、对于nginx我喜欢配置文件写简洁正则配置让多事情变得简单运行效率高占用资源少代理功能强大适合做前端响应服务器 

13、Apache处理动态有优势Nginx并发性比较好CPU内存占用低rewrite频繁还是使用Apache吧

转载于:https://www.cnblogs.com/zlslch/p/6033673.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/372089.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

与Maven 3,Failsafe和Cargo插件的集成测试

开箱即用,可以在Maven中进行单元测试。 因此,它也经常用于集成测试。 这样做的主要缺点是集成测试可能需要花费更多的时间来执行,并且因为没有人喜欢每次构建都要等待很长时间–使用-Dmaven.test.skiptrue标志可以跳过测试 为了执行与Maven的…

Spring入门第二十五课

使用具名参数 直接看代码&#xff1a; db.properties jdbc.userroot jdbc.passwordlogan123 jdbc.driverClasscom.mysql.jdbc.Driver jdbc.jdbcUrljdbc:mysql://localhost:3306/selective-courses-systemjdbc.initPoolSize5 jdbc.maxPoolSize10 applicationContext.xml <?x…

linux强制回收内存,Linu系统cache强制回收

LINUX的内存管理机制&#xff0c;一般情况下不需要特意去释放已经使用的cache。Cache机制的存在&#xff0c;使得Linux对磁盘的读写速度是有较大的好处的。 在 Linux 操作系统中&#xff0c;当应用程序需要读取文件中的数据时&#xff0c;操作系统先分配一些内存&#xff0c;将…

HDU 1412 {A} + {B}

Problem Description给你两个集合。要求{A} {B}.注:同一个集合中不会有两个同样的元素.Input每组输入数据分为三行,第一行有两个数字n,m(0<n,m<10000),分别表示集合A和集合B的元素个数.后两行分别表示集合A和集合B.每一个元素为不超出int范围的整数,每一个元素之间有一个…

Google API:如何访问Google Analytics(分析)数据?

在深入研究Google Analytics&#xff08;分析&#xff09;API之前&#xff0c;了解一些Google Analytics&#xff08;分析&#xff09;术语及其关系总是很有用的。 Google帐户&#xff1a;要访问Google Analytics&#xff08;分析&#xff09;&#xff0c;用户将需要一个Google…

为什么linux的新得立软件下载,linux,debian_蝶变(Debian)_Xfce_新立得软件管理_安装不上软件了,怎么处理?,linux,debian - phpStudy...

蝶变(Debian)_Xfce_新立得软件管理_安装不上软件了,怎么处理&#xff1f;(synaptic:9573): GLib-CRITICAL **: g_child_watch_add_full: assertion pid > 0 failed正在预设定软件包 ...(正在读取数据库 ... 系统当前共安装有 343467 个文件和目录。)正准备解包 .../libc6-db…

设计模式学习笔记(十六:桥接模式)

1.1概述 将抽象部分与它的实现部分分离&#xff0c;使他们都可以独立地变化。这就是桥接模式的定义。 抽象类或接口中可以定义若干个抽象方法&#xff0c;习惯上将抽象方法称作操作。抽象类或接口使程序的设计者忽略操作的细节&#xff0c;即不必考虑这些操作是如何实现的&…

Request的getParameter和getAttribute方法的差别

HttpServletRequest.getParameter("modelName");能取到想要的modelObject吗&#xff1f;经过測试之后。发现是不能的。后来想想。其它道理挺简单的&#xff0c;当两个Web组件之间为转发关系时&#xff0c;转发源会将要共享request范围内的数据先用setAttribute将数据…

Spring Social入门–第2部分

几周前&#xff0c;我写了一篇文章&#xff0c;展示了我认为可以使用Spring Social编写的最简单的应用程序。 该应用程序读取并显示了Twitter用户的公共数据&#xff0c;并被编写为Spring Social和社交编码领域的介绍。 但是&#xff0c;让您的应用程序显示用户的公共数据只是故…

linux静默删除文件夹,Linux常用命令10 - unzip

zip 是最广泛使用的归档文件, 除了linux&#xff0c;windows也是非常的广泛。&#xff0c;支持无损数据压缩。 zip 文件是包含一个或多个压缩文件或目录的数据容器。接下来&#xff0c;我将解释如何使用 unzip 命令通过命令行解压缩 Linux 系统中的文件。 还有与之对应就是 zip…

Git学习笔记(一) 安装及版本库介绍

安装Git 最早Git是在Linux上开发的&#xff0c;很长一段时间内&#xff0c;Git也只能在Linux和Unix系统上跑。不过&#xff0c;慢慢地有人把它移植到了Windows上。现在&#xff0c;Git可以在Linux、Unix、Mac和Windows这几大平台上正常运行了。 在Linux上安装Git 首先&#xff…

python基础:迭代器、生成器(yield)详细解读

1. 迭代器 迭代器是访问集合元素的一种方式。迭代器对象从集合的第一个元素开始访问&#xff0c;知道所有的元素被访问完结束。迭代器只能往前不会后退&#xff0c;不过这也没什么&#xff0c;因为人们很少在迭代途中往后退。 1.1 使用迭代器的优点 对于原生支持随机访问的数据…

LazyInitializationException的四种解决方案–第2部分

本文从教程​​的第1部分继续。 使用PersistenceContextType.EXTENDED的有状态EJB加载收集 该方法只能应用于与Full JEE环境兼容的应用程序&#xff1a;将EJB与PersistenceContextType.EXTENDED一起使用。 检查下面的代码&#xff0c;DAO的样子&#xff1a; package com.ejb…

Linux将硬盘转化为pv,Linux扩展硬盘 物理卷(PV) 卷组(VG) 逻辑卷(LV)

1、给虚拟机添加两块新的sata虚拟硬盘&#xff0c;容量8G和10G# fdisk -l 命令2、分别在这两个硬盘上建立pvPvcreate /dev/sdb 创建一个物理卷/dev/sdb 磁盘名是 fdisk -l 查询出来的Pvscan 查看当前所有物理卷Pvdisplay 查看当前所有物理卷的详情3、创建VG&#xff0c;使得…

ubuntu 16.10 shu rufa meiy ou l e geng xi zhi hou

转载于:https://www.cnblogs.com/ganmk--jy/p/6035894.html

ZOJ Monthly, November 2012

A.ZOJ 3666 Alice and Bob 组合博弈&#xff0c;SG函数应用#include<vector> #include<cstdio> #include<cstring> #include<algorithm>using namespace std;const int maxn 10000 100; int SG[maxn]; vector<int> g[maxn];int mex(int u) { /…

使用Aspect和Spring Profile进行电子邮件过滤

在Web应用程序开发期间&#xff0c;经常需要发送电子邮件。 但是&#xff0c;有时数据库中会包含来自生产的数据&#xff0c;并且存在在电子邮件测试执行期间向真实客户发送电子邮件的风险。 这篇文章将解释如何避免在没有在发送电子邮件功能中明确编写代码的情况下避免这种情…

红旗linux 进不去图形界面,进不了红旗Linux6.0的图形界面请高手帮忙

习生 于 2008-11-02 11:08:42发表:引用:原帖由 zhaoruiqi 于 2008-11-2 10:03 发表 我的也是进不了图形界面&#xff0c;用文本安装后进系统也一样正常按rtl的方法对xorg.conf进行修改,已经能进入图形界面。你看看楼上rtl的回复的能否对你有帮助。zhaoruiqi 于 2008-11-02 10:0…

总结继承的几种方式

简单总结继承的几种方式 JavaScript作为一门弱类型的语言&#xff0c;本着精简的原则&#xff0c;它取消了类的概念&#xff0c;只有对象的概念&#xff0c; 更是有万物皆对象的说法。在基于类的面向对象方式中&#xff0c;对象&#xff08;object&#xff09;依靠类&#xff0…

Oracle SQL精妙SQL语句讲解(二)

- 如果存在就更新&#xff0c;不存在就插入用一个语句实现 DROP TABLE t_mg; CREATE TABLE t_mg(code VARCHAR2(10), NAME VARCHAR2(10)); SELECT * FROM t_mg; MERGE INTO t_mg a USING (SELECT the code code, the name NAME FROM dual) b ON (a.code b.code) WHEN M…