gpt4 book ai didi

.net - 使用第 7 层或第 4 层进行负载平衡

转载 作者:行者123 更新时间:2023-12-01 15:48:27 24 4
gpt4 key购买 nike

我想念应用负载平衡的第 7 层或第 4 层之间的区别。其中一个更好吗?我如何决定哪个更适合我的系统?

提前致谢...

最佳答案

我想这可能是一个非常激烈的讨论,无论如何它与编程无关但是......

它们之间的区别在于您在哪里(OSI 层)进行平衡。在我看来,你应该永远不要只在第 7 层进行平衡(那么你应该始终使用第 4 层)。

为什么?第 7 层负载平衡很好,因为它不需要任何特殊硬件,它是在应用程序级别完成的,但是您为此付出了许多其他缺点:

  • 性能不太好:负载均衡器必须跟踪 cookie 和 session (在需要时),为此您需要更强大的硬件。正确的方法应该是让应用程序妥善管理这个。要覆盖它,您需要更强大的硬件。
  • 负载分布在服务器之间,但真正负载平衡并不容易。通常它只是简单地注入(inject) DNS 服务器,然后它并不知道服务器有多忙(假设你有一个密集的和两个轻量级的操作要分派(dispatch)到两台服务器,循环法可能分配一个密集的和一个当最好的可以将轻量级分配给同一台服务器时,将轻量级分配给同一台服务器。
  • 它们根本不可扩展(它们必须管理您的应用程序应该管理的内容)并且会浪费大量资源。

为什么他们好?它们可能是一种快速、简单、肮脏的解决方案,用于修补不可扩展的应用程序(对于第 4 层平衡,您的 ASP.NET 应用程序本身应该是可扩展的)。它们可能是偶然问题的临时解决方案,而不是解决方案。在现实世界中,第 4 层负载平衡是首选(有时与第 7 层平衡混合使用,例如 Google 使用第一级循环 dns 负载平衡)。

阅读这篇关于负载平衡的非常好的文章:http://1wt.eu/articles/2006_lb/index.html

我觉得很有趣,here (关于第 7 层负载平衡的优点)他们说:

While the use cases are still fairly limited, this functionality of layer 7 load balancing does open up many possibilities for future use. As this technology evolves, we will gain the ability to balance additional types of traffic more intelligently.

如果(这些优势的)用例“仍然相当有限”并且我们必须等待“随着这项技术的发展”,那么我看不出有任何理由现在仅基于第 7 层的任何负载平衡解决方案(此外,在未来的任何时候添加它真的很容易)。

关于.net - 使用第 7 层或第 4 层进行负载平衡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10517447/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com