【问题标题】:Redirect Users Based on Server Traffic根据服务器流量重定向用户
【发布时间】:2010-11-15 19:21:32
【问题描述】:

我有一个 PHP 脚本,它可以找出我每台服务器上的用户数量并将其输入到 MySQL 数据库中。我希望将用户重定向到由 MySQL 数据库定义的用户最少的页面。

如何做到这一点?

提前致谢, 卡勒姆

【问题讨论】:

  • 如何做到这一点?通过编写代码来做到这一点。但说真的,这是一个非常重要的问题,需要担心很多边缘情况。我建议改为阅读有关Load BalancingAn O'Reilly Article on Load Balancing 以及您可以通过 google 找到的更多内容...
  • 您似乎拥有一切必要的东西和正确的解决方案。读出该数据库,检查阈值,按负载最小的服务器排序,发出重定向标头。 - 或者您尝试过什么,您是否遇到了特定问题,或者您是否怀疑您的方法中存在绊脚石?
  • @Callum Whyte - 有很多可靠且易于配置的负载平衡硬件,花了$$$,你的逻辑对我来说有很大问题,you are trying to reduce load by just creating a load on database checking + complex calculation + script execution
  • @Callum Whyte - 使用 memcache 怎么样?您可以使用不同的 memcache 键存储不同的网页,并且每个特定用户都可以根据匹配的 memcache 键从 memcache 中获取数据
  • @Callum Whyte - 你可能应该改变问题以避免Server Traffic 因为它让每个人(至少我)都认为与负载平衡有关

标签: php mysql ajax redirect


【解决方案1】:

您可以在数据库上使用按用户数量排序的查询。

SELECT ServerColumn FROM Table ORDER BY NumberOfUsersColumn ASC;

这将检索按服务器负载排序的服务器(在您的数据库中定义)。

重定向部分可以看http://php.net/manual/en/function.header.php

并使用“位置”标题。

【讨论】:

  • 此答案将根据问题中的有限描述起作用。然而,使用 MySQL 进行负载平衡对我来说听起来像是很臭的代码......有很多更好的方法可用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多