Q
检查网站是否过载
1
A
回答
4
一般来说,这通常是一个负载平衡器的设置,而不是你直接写入你的应用程序的东西。负载均衡器偶尔会检查您的站点的服务器运行状况,如果检测到它们不可用或具有高延迟等,则会将流量路由到其他服务器/站点。
将它编码到您的应用程序中意味着如果您的服务器负载过重并且应用程序速度变慢,那么检查它是否过载的代码也会变慢。如果这是有道理的。
编辑: 为了扩大这是如何与负载均衡器做了一些,你一般会在你的应用程序页面运行的一些基本检查,并返回一个HTTP 200,如果一切正常,或HTTP 503如果事情不好。然后,负载平衡器会在您的服务器上点击该URL并检查响应代码以查看它是否正常运行(它检查的频率是您可以配置的)。如果它起来,很酷。如果发生故障,它将开始在其他地方发送流量。
由于您控制了检查页面,因此您可以根据需要编写支票。通常你会在那里进行一些快速的健全检查。例如尝试连接到数据库,如果它给你一个“连接太多”的错误,那么返回一个503,负载平衡器会知道你已经超负荷。
如果您只关心数据库情况而不关心服务器负载或延迟等情况,只需在连接到数据库时捕获任何错误,并在发生此情况时将用户重定向到静态页面,即可获得类似的结果。例如,
try
{
$dbh = new PDO("mysql:host=localhost;dbname=whatever", $user, $pass);
}
catch (PDOException $e)
{
header("Location: /site_overloaded_message.html"); exit();
}
+1
它确实有道理。 –
相关问题
- 1. 如何检测网站是否超载?
- 2. 检查网站是否可通过ip通过php
- 3. 检查网站是否被的.htaccess
- 4. 卷曲检查是否在网站上
- 5. 检查网站是否可用
- 6. 检查网站上是否存在cookie
- 7. 检查网站是否存在
- 8. 检查网站是否有证书C#
- 9. 检查SharePoint网站是否存在
- 10. 检查网站是否在线与AS3
- 11. 检查网站是否可联系
- 12. 检查网站是否在线
- 13. 检查是否存在SharePoint网站
- 14. Swift - 检查网站是否访问
- 15. StageWebView AS3 - 检查加载网站是否失败?
- 16. 检查网站是否可以加载或不在WebView中
- 17. Ruby代码来检查网站是否有网站地图
- 18. 检查通过C#登录网站是否成功
- 19. 检查是否有人通过鼠标移动离开网站
- 20. 如何通过WiX 3.5检查是否存在IIS 7网站?
- 21. 检查是否可以通过JavaScript访问远程网站
- 22. 检查网页是否完全加载
- 23. 检查URL是否通过iframe加载
- 24. 如何检查网站地图是否包含一些网址
- 25. 检查是否卸载
- 26. 检查UIWebView是否加载
- 27. 检查如果用户通过网站
- 28. 如何检测您的网站是否在SFSafariViewController上加载
- 29. 如何检查css是否得到正确加载或不在magento网站
- 30. 检查用户是否是附近路线检查站与GPS
我们应该知道每个站点是如何做到这一点的?也许有一个“areyouoverloaded.com”网站,直到他们停止响应,在这一点上,他们通过美国邮政优先邮件派遣一封信,通知网站管理员,他们应该登录到系统,并将他们的页面改为超载版。或者可能有一些代码监视平均SQL查询持续时间,并在执行时间超过0.5s时自动切换到超载状态 –
对不起,您看到@Marc B的日子不好,并且不知道我正在进入这里的雷区。我只是问一个简单的问题。标签应该提供足够的上下文。如果没有传统的方式,那么就说出来。 –
对于一个拥有你的个人资料的用户来说,这是一个无知的问题你不觉得吗?如果你能提供一个例子,它会有所帮助。 – samayo