Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services php应用程序的负载均衡器_Amazon Web Services_Load Balancing - Fatal编程技术网

Amazon web services php应用程序的负载均衡器

Amazon web services php应用程序的负载均衡器,amazon-web-services,load-balancing,Amazon Web Services,Load Balancing,如果您有时间,可以询问有关负载平衡器的问题 所以我已经使用AWS有一段时间了。超级基本的实例,在我需要做某事时使用它们来完成一些任务 我现在有一个任务需要负载平衡。但这不是一项公共服务。这几乎是一个巨大的cron任务,我不想在与我的网站相同的服务器上运行 我设置了一个AWS负载平衡器,但它没有达到我预期的效果。 它卡在一台服务器上,根本无法实现负载平衡。我已经阅读了它为什么会这样做,这很好,但我需要它成为一个认真的循环负载平衡器 编辑: 我在不同的区域上设置了实例,但无论我向ELB添加多少实例,

如果您有时间,可以询问有关负载平衡器的问题

所以我已经使用AWS有一段时间了。超级基本的实例,在我需要做某事时使用它们来完成一些任务

我现在有一个任务需要负载平衡。但这不是一项公共服务。这几乎是一个巨大的cron任务,我不想在与我的网站相同的服务器上运行

我设置了一个AWS负载平衡器,但它没有达到我预期的效果。 它卡在一台服务器上,根本无法实现负载平衡。我已经阅读了它为什么会这样做,这很好,但我需要它成为一个认真的循环负载平衡器

编辑:

我在不同的区域上设置了实例,但无论我向ELB添加多少实例,它都只使用一个。如果我取下那个实例,它会切换到另一个,所以我知道它正在工作。但我真的希望它在任何情况下都使用不同的

我知道还有其他选择。以下是我的问题: 定制php负载平衡器现在是一个不错的选择吗? IE:有一个服务器列表,让php随机选择一个ec2实例。不会是可扩展的,但至少我可以在2分钟内设置这个,它现在可以工作

我是否应该花时间学习HAProxy的工作原理,并将其设置为AWS ELB的位置

我做错了吗,AWS的ELB做循环赛。我只是有点不对劲

编辑:

结构: 1) Web服务器找到要执行的任务

2) 如果它太大,它会将其发送到AWS(负载平衡器)

3) 在EC2上完成这项工作

4) 通过curl向API报告

5) 冲洗并重复


一切都很好。但是因为连接总是来自我的服务器(一个IP),所以它会粘到一台EC2机器上。

ELB适用于负载逐渐增加的站点。如果您预计负载会异常突然增加,您可以要求AWS为您预热负载

我可以告诉你,我在不同的场景中使用了ELB,它对我来说一直都很好。由于您没有提供太多关于您的体系结构的信息,我敢打赌ELB适用于您,并且在所有连接只命中一台服务器的情况下,我会问您:

1) 您是否检查了ELB以查看其背后有多少实例? 2) 你在ELB背后的例子都还活着吗? 3) 您是否通过ELB DNS访问您的应用程序

无论如何,我从一篇优秀的文章中摘录了一段,这篇文章对ELB和HAProxy进行了很好的比较

ELB提供了基于EC2的循环和会话粘性算法 实例运行状况。HAProxy提供了多种算法,如 循环、静态RR、最少连接、源、uri、url_参数等

希望这有帮助

这一点让许多使用AmazonELB的用户感到惊讶。亚马逊 当传入的流量来自以下位置时,ELB的行为有点奇怪 单个或特定IP范围,它不能有效地进行循环 并坚持要求。亚马逊ELB开始支持单一EC2或 多AZ部署中单个可用性区域中的EC2 在这种情况下。例如:如果您有应用程序 A(客户公司)和应用程序B,部署应用程序B 内部AWS基础设施,带有ELB前端。所有的交通 从应用程序A(单个主机)生成的数据将发送到中的应用程序B AWS,在这种情况下,应用程序B的ELB将无法有效舍入 Robin将流量分配给部署在其下的Web/App EC2实例。这是 因为来自应用程序A的全部传入流量将来自 单一防火墙/NAT或特定IP范围服务器和ELB将启动 将请求不均匀地粘贴到单个AZ中的单个EC2或EC2。 注意:用户通常在负载测试期间遇到这种情况,因此最好 从多个分布式代理进行AWS Infra负载测试


以下文章第9点的更多信息

HAProxy并不难学,它非常轻巧但灵活。实际上,我在ELB背后使用HAProxy是为了实现这两个方面的最佳效果——ELB面向互联网和解包SSL的加固、管理和免提可靠性,以及HAProxy的灵活配置,使我能够微调事情对服务器的影响。我从未丢失过HAProxy实例,但如果我丢失了,ELB会将该实例从旋转中移除。。。正如我所看到的那样,当后端服务器都变得不可访问时,这(因为它的配置方式)使ELB认为HAProxy不健康,但这是我的设置中的设计。

您使用的是ELB的DNS还是您获得的IP地址之一?ELB的A记录。您在ELB后面有多少台服务器以及它们如何在可用性区域之间划分?非常好的文章,谢谢。我接着介绍了如何对两个EC2进行负载平衡,在底部,他让负载平衡器在两个EC2之间来回切换。我严格遵循它,并使用ELB的A记录连接,它始终坚持一个EC2。我的ELB后面有两个健康的、正在运行的和活着的实例。确认,因为我在Putty中打开了两个,并且正在查看访问日志(/var/log/httpd)。我应该注意的是,连接总是来自我的服务器,所以只有1个IP地址