- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
一般来说,我想了解分布式应用程序 - 负载均衡器是单点故障吗?
我不确定,但这可以是 Apache 负载均衡器,也可以是 F5 Network 中规定的设备/硬件负载均衡器。等等。
我已经看到(在论文/幻灯片上)对于同一个应用程序,设计可以有多个 apache 负载均衡器。
我与我的同事进行了讨论 - 将多个 IP 地址/虚拟机/unix 框(具有负载平衡器硬件设备)映射到相同的 DNS 域(例如 www.amazon.com) - 但是谁将负责基于什么基础/算法请求将转到哪个特定的 IP/unix 框(映射到 amazon.com/DNS)
我的问题:在请求流的开始(在第一个入口点) - 只有一台机器(它根据某种算法将请求发送到下面的负载均衡器),如果这台机器出现故障,系统会受到干扰(有多个负载均衡器)和集群等)会下降
最佳答案
对不起,如果我把它吹得不成比例。
记住单点故障 (SPOF) 的定义,如果您的 LB 失败,您的应用程序将不可用,所以简而言之,是 单个 LB 或反向代理是 SPOF。
为什么?,假设您只有一个 LB 并且它还能够轻松处理您可能拥有的所有流量,您还需要确保您不会出现任何硬件故障或任何其他类型的故障可能会使您的设备停机(极端情况数据中心崩溃)。
如何处理问题?
我只是在这里提到,仅仅在您的应用程序服务器前面添加层并不一定能解决您的所有问题,相反,您添加了“网络跃点”,因此在每个请求中都会产生即使是很小的时间开销。有时还会使故障排除变得更加困难,增加成本以及复杂基础架构带来的所有其他不利因素。
这就是为什么我需要一个很好的理由来让不同的 LB 排队 .
就这一点而言,我将遵循的架构(类似于您在论文中看到的架构)是您的基础设施前面的两个 LB(仅当它们难以处理您的流量时才超过两个)和 DNS 负载平衡他们。
当然,这个解决方案有缺点,DNS 与 无关。状态你的后端,所以你没有 故障转移 功能。
您可以通过使用强大的监控系统与您的 DNS 合作来解决这个问题,以实现对 DNS 的自动更改,从而实现故障转移功能。同样,您必须接受 DNS 绑定(bind)到生存时间 (TTL),并且某些客户端会在发生故障时缓存“错误”的 ip。
正如您意识到上述内容并不完美,但可能(大多数情况下)是您唯一的出路。
对于对停机时间的容忍度更低的情况(即使对于一部分客户),我会留下几个替代方案。
关于networking - 分布式应用程序 - 负载均衡器是单点故障吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40601012/
我是一名优秀的程序员,十分优秀!