当前位置: 首页 > 知识库问答 >
问题:

web应用程序的负载平衡是如何工作的?一般概念

尉迟轶
2023-03-14

我正在努力弄清楚我是否正确理解负载平衡。我有一个用XAMPP开发的web应用程序。基本上我有一个数据库和应用程序本身。之后,我在运行Ubuntu的VPS中的Digital Ocean中托管了该应用程序,并在其中安装了ApacheMySQL和PHP。现在我想了解负载平衡的要求。

从我到目前为止所读到的关于负载平衡的内容来看,您至少需要3台服务器,其中一台将是Apache或NGINX,并打开相应的负载平衡模块(此服务器将进行负载平衡,仅此而已)。

但是我真的不明白其他两台服务器应该如何配置。它们是否都有相同的应用程序和数据库,或者一个有应用程序,另一个有数据库。

有人能帮我理解一下基本概念吗?我不需要任何细节。

非常感谢。

PS.如果我计划在未来通过Docker部署应用程序,它的工作方式相同吗?我只是有一个容器的服务器和其他2个或更多的容器的应用程序和数据库?

共有1个答案

羿经武
2023-03-14

您至少需要4台服务器:一台负载平衡器、两台应用服务器、一个数据库。NGINX/Apache将在两个应用服务器之间实现负载平衡。

 类似资料:
  • 这是我的第一个负载平衡问题。 我已经编写了一个简单的express应用程序来了解负载平衡是如何工作的。我还看了一些类似于的东西。如果我必须使用Nginx进行负载平衡,那么我是否应该在4个不同的docker容器中运行4个不同的express实例,然后使用Nginx在它们之间进行负载平衡,而Nginx位于自己的容器中? 我说得对吗?我有点困惑

  • AWS推出了应用程序负载平衡器,可以进行基于路径的路由。是否可以将经典负载平衡器放在应用程序负载平衡器之后。 示例:假设我们有两个经典的负载平衡器。应用程序负载平衡器将流量路由到所有url(如应用程序负载平衡器/前端)的第一个经典负载平衡器,并将流量路由到所有url(如应用程序负载平衡器/后端)的第二个经典负载平衡器* 目前,似乎我们只能将主机置于应用程序负载平衡器之后。是否可以将负载平衡器置于应

  • 我有一个弹性Beanstalk应用程序,最初配置为使用经典的负载平衡器。我发现这在通过WebSocket连接时会导致错误。因此,我将应用程序配置为使用应用程序负载平衡器,因为我被告知ALB支持WebSockets。然而,它们似乎没有:当我试图通过WebSocket连接到我的ALB时,会出现完全相同的错误。 ALB真的支持WebSocket吗?AWS文件在这方面存在矛盾。此页面表示它只支持HTTP和

  • 我正在尝试设置应用型负载均衡,以将流量转发到AWS中的Nginx入口控制器。要设置Nginx入口控制器,我使用的是从安装说明中获得的YML。 部署后,一切正常,流量正确转发到EKS pod。但是,上面的YML文件正在aws中创建“经典负载均衡器”,因为我想创建“应用型负载均衡器”。我将“service.beta.kubernetes.io/aws-load-balancer-type: elb”更

  • 我希望在现有的服务器设置中集成WAF,因为我有经典的负载平衡器(带有EC2实例),它不支持WAF,我需要迁移到应用程序负载平衡器。 是否可以在不更改DNS(记录)的情况下将现有的经典负载平衡器迁移到应用程序负载平衡器?

  • 我正在尝试配置AWS应用型负载均衡器(与经典负载均衡器相比)以将流量分配到我的EC2 Web服务器。出于合规性原因,我的应用程序需要端到端SSL/HTTPS加密。 在我看来,确保在客户端和web服务器之间的整个过程中对流量进行加密的最简单方法是终止web服务器上的HTTPS连接。 我的第一个问题:是否可以通过AWS应用程序负载平衡器将HTTPS流量以这种方式传递到负载平衡器后面的web服务器? 根