借鉴一些网上资料整理了简单的比较:

LVS的负载能力强,因为其工作方式逻辑非常简单,仅进行请求分发,而且工作在网络的第4层,没有流量,所以其效率不需要有过多的忧虑。

LVS基本能支持所有应用,因为工作在第4层,所以LVS可以对几乎所有应用进行负载均衡,包括Web、数据库等。

注意:LVS并不能完全判别节点故障,比如在WLC规则下,如果集群里有一个节点没有配置VIP,将会导致整个集群不能使用。还有一些其他问题,目前尚需进一步测试

Nginx工作在网路第7层,所以可以对HTTP应用实施分流策略,比如域名、结构等。相比之下,LVS并不具备这样的功能,所以Nginx可使用的场合远多于LVS。并且Nginx对网络的依赖比较小,理论上只要Ping得通,网页访问正常就能连通。LVS比较依赖网络环境。只有使用DR模式且服务器在同一网段内分流,效果才能得到保证。

Nginx可以通过服务器处理网页返回的状态吗、超时等来检测服务器内部的故障,并会把返回错误的请求重新发送到另一个节点。目前LVS和LDirectd 也支持对服务器内部情况的监控,但不能重新发送请求。

比如用户正在上传一个文件,而处理该上传信息的节点刚好出现故障,则Nginx会把上传请求重新发送到另一台服务器,而LVS在这种情况下会直接断掉。Nginx还能支持HTTP和Email(Email功能很少有人使用),LVS所支持的应用在这个电商比Nginx更多。

Nginx同样能承受很高负载并且能稳定运行,由于处理流量受限于机器I/O等配置,所以负载能力相对较差。

Nginx 安装、配置及测试相对来说比较简单,因为有相应的错误日志进行提示。LVS的安装、配置及测试所花的时间比较长,因为LVS对网络以来比较大,很多时候有可能因为网络问题而配置不能成功,出现问题时,解决的难度也相对较大。Nginx本身没有现成的热备方案,所以在单机上运行风险较大,建议KeepAlived配合使用。另外,Nginx可以作为LVS的节点机器使用,充分利用Nginx的功能和性能。当然这种情况也可以直接使用Squid等其他具备分发功能的软件。

浅谈lvs和nginx的一些优点和缺点的更多相关文章

  1. 浅谈初次搭建nginx+php+mysql遇到的问题

    先说明下我linux上的环境: nginx + php(5.5.10) + mysql 開始的源代码已经在本地写好,并调试成功(本地的环境是用XAMPP的默认配置).在把代码上传至linux上时,出现 ...

  2. 浅谈 Nginx和LVS的各种优缺点

    VS的负载能力强,因为其工作方式逻辑非常简单,仅进行请求分发,而且工作在网络的第4层,没有流量,所以其效率不需要有过多的忧虑. LVS基本能支持所有应用,因为工作在第4层,所以LVS可以对几乎所有应用 ...

  3. 浅谈Nginx负载均衡和F5的区别

    前言 笔者最近在负责某集团网站时,同时用到了Nginx与F5,如图所示,负载均衡器F5作为处理外界请求的第一道"墙",将请求分发到web服务器后,web服务器上的Nginx再进行处 ...

  4. 浅谈Nginx负载均衡与F5的区别

    前言 笔者最近在负责某集团网站时,同时用到了Nginx与F5,如图所示,负载均衡器F5作为处理外界请求的第一道“墙”,将请求分发到web服务器后,web服务器上的Nginx再进行处理,静态内容直接访问 ...

  5. 【转】浅谈Nginx负载均衡与F5的区别

    前言 笔者最近在负责某集团网站时,同时用到了Nginx与F5,如图所示,负载均衡器F5作为处理外界请求的第一道“墙”,将请求分发到web服务器后,web服务器上的Nginx再进行处理,静态内容直接访问 ...

  6. 浅谈大型web系统架构

    动态应用,是相对于网站静态内容而言,是指以c/c++.php.Java.perl..net等服务器端语言开发的网络应用软件,比如论坛.网络相册.交友.BLOG等常见应用.动态应用系统通常与数据库系统. ...

  7. 转:浅谈大型web系统架构

    浅谈大型web系统架构 动态应用,是相对于网站静态内容而言,是指以c/c++.php.Java.perl..net等服务器端语言开发的网络应用软件,比如论坛.网络相册.交友.BLOG等常见应用.动态应 ...

  8. 浅谈web应用的负载均衡、集群、高可用(HA)解决方案(转)

    1.熟悉几个组件 1.1.apache     —— 它是Apache软件基金会的一个开放源代码的跨平台的网页服务器,属于老牌的web服务器了,支持基于Ip或者域名的虚拟主机,支持代理服务器,支持安 ...

  9. 微服务浅谈&服务治理的演变过程

    这两天对互联网的架构演变进行了简单了解,并对微服务的出现很感兴趣,所以对相关知识进行了简单的整理与总结. 本篇文章先简单介绍了互联网架构的演变,进而介绍了服务化,最后介绍了微服务及最新的服务网格(Se ...

随机推荐

  1. 破解 Adobe 系列的最佳方法,手把手教

    此方法是个人认为最方便的而且最安全的方法(可以避免下载到可能捆绑病毒的破解版本) 1.首先到Adobe的官网上下载 Creative Cloud: 打开官网上creative cloud 的下载页面: ...

  2. html <input type="text" />加上readonly后在各种浏览器的差异。

    <html> <body> <p>Name:<input type="text" name="email" /> ...

  3. 常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全

    innerHTML:    设置或获取位于对象起始和结束标签内的 HTML scrollHeight: 获取对象的滚动高度. scrollLeft:   设置或获取位于对象左边界和窗口中目前可见内容的 ...

  4. Spring定时任务实例

    一.Quartz介绍 在企业应用中,我们经常会碰到时间任务调度的需求,比如每天凌晨生成前天报表,每小时生成一次汇总数据等等.Quartz是出了名的任务调度框架,它可以与J2SE和J2EE应用程序相结合 ...

  5. Django 模型和数据库 总结

    模型和数据库 模型 首先我们在创建一个model的时候,这个类都是继承自 django.db.models.Model, 各种Model Field类型 AutoField,自动增长的IntegerF ...

  6. uwp版的音乐播放器练手

    UWP项目之音乐播放器 这个项目本来是我女朋友的一个小作业,她做不出来,结果只能是我来代劳.经过几天的时间虽然赶出来了,但是自己不是很满意,还有很多不满意的地方,因此决定在最近的一段时间内,重新完成. ...

  7. [leetcode-500-Keyboard Row]

    Given a List of words, return the words that can be typed using letters of alphabet on only one row' ...

  8. 6.function自定义插件的方法和使用

    Smarty插件本质上是一个function函数 有三种类型的插件: function modifier block functions 定义的方法有三种: 1.使用registerPlugin的方法 ...

  9. 点击率模型AUC

    一 背景       首先举个例子:                          正样本(90)                       负样本(10)         模型1预测      ...

  10. Linux ls命令详解

    ls 命令可以说是Linux下最常用的命令之一. -a 列出目录下的所有文件,包括以 . 开头的隐含文件.(后有详解)-b 把文件名中不可输出的字符用反斜杠加字符编号(就象在c语言里一样)的形式列出. ...