首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache负载均衡器下降,因为其中一个应用程序无法连接到数据库

问Apache负载均衡器下降,因为其中一个应用程序无法连接到数据库
EN

Server Fault用户
提问于 2016-06-09 13:47:30
回答 1查看 41关注 0票数 0

我用4个应用程序完成了一个Apache的设置(只需调用它们: A、B、C和D)。有一天,A无法与数据库对话,但A没有被关闭,所以A仍然收到了大量的请求。因为我们的Apache设置为负载均衡器,因为A接收的请求越来越多,但无法处理任何请求,所以Apache向B、C和D发送了一些请求,最后,Apache由于越来越多的请求出现而关闭。

那么,有没有人有任何建议可以更改Apache设置来解决这个问题?

谢谢

EN

回答 1

Server Fault用户

发布于 2016-06-09 14:16:47

解决方案1:将mysql连接的小超时(例如500 ms)保持在A内。这样,请求将被更快地终止。

解决方案2:每当A捕获超时异常时,它都应该设置mysql处于关闭状态的环境变量,而其他请求应该会很好地向用户显示错误消息。您可以每100次请求中的1次检查mysql连接。因此,只有一个请求将等待mysql连接,而99将立即终止。如果任何请求成功地连接到mysql,它将更新环境标志,并让其他请求通过。为了更快地恢复,您还应该为每一个这样的例外情况给自己发送一封邮件。

解决方案3:试图找出瓶颈,是否达到了内存限制,是否有太多的apache线程?如果您在apache后面运行php,那么请注意,apache为每个请求将php加载到内存中。因此,每个请求至少需要25 MB。您可以使用php而不是php,这将使服务器当前能够处理的请求数量增加100倍,因为没有其他瓶颈。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/782972

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档