首先,我会向你解释我的情况。 我正在运行一个相当受欢迎的网站作为一个副项目,所以我不能真的投入大量的资金。 我目前只有一个HAProxy服务器,向Apache发送正常请求,并向Lighttpd发送所有静态文件请求。 这是工作得很好,因为所有的PHP和POST请求都被Apache处理,而所有的图像被发送到更快的Lighttpd(该网站主要是图像,所以这是非常重要的)。 如果不需要build立一个服务于图片的子域名,这将是很好的,因为短的URL也是非常重要的,所以我使用HAProxy的原因。 我find了一个托pipe服务提供商,提供了我一直使用的相当便宜的无限量带宽,问题出现在我开始推出100MB网卡所能处理的带宽时,因此需要第二台服务器。 我已经对我的select进行了很多的思考,所以我会向你解释每一个。 希望你能提供一些洞察力,哪一个对我来说是最好的select,或者还有另一个我还没有想到的select。 要求: 甚至带宽分配也是必须的。 我有一个非常强大的服务器,所以扩大是不是一个选项。 我需要扩展以获得更多的带宽。 短url。 我真的不想设置像img.example.com这样的子域来提供我的图片。 example.com/image.jpg是如何现在,我真的很喜欢它留下来。 但是,如果没有别的办法,那么我明白了。 处理请求的最接近的服务器将是非常好的,但不是必须的。 有一些事情要记住。 HAProxy负载平衡: 无论如何,因为我已经在使用HAProxy,所以做起来真的很容易。 不过,我认为问题出现在分配带宽时。 我可能在这方面是错误的,但不HAProxy发送请求到服务器处理它的服务器,然后通过HAProxy发送回到客户端? 因此,所有stream量都通过负载均衡器返回,从而使其占用与所有服务器组合在一起的带宽。 DNS循环: 这可能是我最好的select。 只需复制网站跨多台服务器,并做我现在正在做的事情。 缺点是如果一台服务器停机,客户端仍然被发送到它。 我也需要在多个服务器上复制站点。 我有种希望,我可以有一个主要的服务器,除了静态文件处理一切,然后有几个静态文件服务器。 我还看到,这就是“穷人的负载平衡”,如果有更复杂一点的东西,那就太好了。 直接服务器返回: 这似乎很复杂,但可能是一个不错的select。 我仍然能够发送特定的URL到某些服务器? 就像现在使用HAProxy一样,每个以正确文件扩展名结尾的URL都会被发送到Lighttpd,而其他扩展则被发送到Apache。 所以我需要类似的东西。 就像所有的php请求都由运行平衡软件的服务器处理,而所有的jpg请求都被发送到多个服务器。 理想情况下,如果HAProxy支持Direct Server Return,那么我的问题就可以解决了。 我也不想使用CDN,因为它们非常昂贵,毕竟这只是一个副项目。 你明白我的问题吗? 让我知道如果我没有解释正确的东西,或者如果你需要更多的信息。
我在正式的ELB文档中find了这个 缺省情况下,负载均衡器将每个请求独立路由到负载最小的应用程序实例。 但是Newvem上的一篇文章说ELB只支持Round Robinalgorithm Amazon ELB支持的algorithm – 目前Amazon ELB仅支持循环(RR)和会话粘性algorithm。 那么哪一个呢? [1] http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_StickySessions.html [2] http://www.newvem.com/dissecting-amazon-elastic-load-balancer-elb-18-facts-you-should-know/?lead_source=popup_ebook&oid=00DD0000000lsYR&email=muneeb%40olacabs.com
我有一个udp服务器,这是我业务stream程中的核心部分。 为了处理我在生产环境中所期望的负载,我可能需要2到3个服务器实例。 服务器几乎是完全无状态的,它主要收集数据,而它上面的层知道如何处理可能来自多个服务器实例的最小数量的陈旧数据。 我的问题是,我怎样才能实现服务器之间的负载平衡? 我宁愿尽可能均匀地在服务器之间分配请求。 我也希望有一些保真度,我的意思是如果客户端X被路由到服务器y,那么我希望X的所有后续请求都去服务器Y,只要它是明智的,不会超载Y. 顺便说一下,这是一个.NET系统…你会推荐什么? 状态是服务器内部的,而不是某种事务。 状态是服务器从接收的数据中汇集的一些数据,并且通过一个简单的WCF WebService来查询。 该应用程序是基于UDP,虽然我不同意这个决定,但是“高于我的工资等级” 我目前正在尝试MS的NLB,它工作正常,开箱即用的保真度的东西,但它会在整个networking上产生噪音… 也没有DNS …哦,这是一个完全服装协议。
这是一个关于MXnetworking优先的问题。 如果我有两个服务器作为不同优先级的MX: MX 10 serverA MX 20 serverB 协议是否保证MX 10是首选的? 提交者是否可以select其他原因,但主要可用性? 换句话说,如果我的serverA MX工作良好并且具有(理论上的)无限连接能力,我能确定没有人会尝试连接到serverB吗?
想象一下,你有一个成功的Web应用程序,它使用ASP.NET和IIS 7.它会产生很多对SQL Server 2008数据库的调用,并且预计将以99.9%的正常运行时间向公众提供(停机时间为8小时45分钟年)。 我们的目标是: 在服务器上安装Windows更新,而不会导致客户停机 防止服务器上的硬件崩溃,因为超时而使ASP.NET应用程序变慢 与对ASP.NET应用程序进行负载平衡不同,负载平衡SQL似乎要困难得多。 为使用Microsoft堆栈的Micro-ISV设置简单的负载平衡SQL Server 2008 R2群集,您有哪些最佳做法?
我正在寻找像使用Heartbeat / Squid / Varnish / etc等来平衡内部apache实例之间的传入stream量。 这必须是软件,而不是硬件,因为我所有的东西都运行在VPS上。 我在这个领域没有太多的经验,所以如果我滥用术语,选错了软件包,我会感到抱歉。 我已经绘制了一些东西来说明我所追求的。 绿色的一面是初始设置的样子,蓝色的一面是增加更多的Apache实例后,由于stream量增加可能看起来像什么。 这可能不是如何工作,但理想情况下,我会将平衡器的IP添加到域的DNS。 然后平衡器会看到每个apache实例上有多less个连接(通过内部IP或永久IP的某个configuration列表),并平均分配连接。 在蓝色有第二个平衡器,因为我相信在某些时候平衡器也需要帮助。 也许我正在讨论这个错误,但是我正在寻找关于“平衡器”应该是什么的帮助以及如何设置它们的最佳实践。 任何帮助将是伟大的。
我在configurationnginx时遇到了问题。 我使用nignx作为反向代理。 我想把我的所有请求发送到我的第一台服务器。 如果第一台服务器停机,我想发送请求到第二台服务器。 简而言之,如何在没有负载平衡的情况下拥有故障转移解决scheme?
我将Apache设置为负载平衡器。 我想让Apache设置X-Forwarded-Proto头,但是这不起作用: RequestHeader set X-Forwarded-Proto "%{SERVER_PROTOCOL}e" 标题被设置为空。 任何想法为什么?
我明白,要在HAProxy负载均衡设置上获得故障转移,您需要两台运行HAproxy的机器(并将其路由到多个Web服务器实例)。 但在这种情况下,说abcd.com,我们如何将这个stream量分割/路由到2个IP地址而不是一个? DNS通常将域名parsing为单个IP。 我们如何使用免费/便宜的工具/服务来做到这一点?
我必须安装wordpress(一个博客,一个域,例如mycompany.com/blog)在两个服务器上共享一个数据库在不同的服务器上,这两个服务器后面的loadbalancer和数据库将在另一台服务器上。 由于stream量大,我们正在这样规划。 我已经在单个服务器上完成独立的wordpress安装,在Windows 2003,2008与IIS6,7等 我只是在研究如何实现这一点。 什么是实现这一目标的步骤和search,我看到一些关于wp-content / uploads目录定期同步的post? 您的帮助非常感谢您的阅读 我们做了什么: a)我们有两个networking服务器连接到san群集b)在san上创build了一个博客目录c)在这两个web服务器上将该博客目录映射为一个虚拟目录d)在它们中的任何一个上安装了wordpress(作为域和IIS虚拟目录是相同的两个服务器 – 例如www.abc.com)e)这个博客的数据库位于两个MySQL Boxes 由于Wordpress坐在圣,所以没有上传或任何类似的冲突,博客url是www.abc.com/blog,这就是它是如何configuration两个。 希望帮助别人!