PHP向web服务器显示用户's ping的最佳方式


PHP best way to show a user's ping to the webserver?

我有几个VPS',并希望使用PHP或shell脚本显示ping毫秒从客户端到服务器(s),以便用户可以比较连接到哪个服务器。最好的方法是什么?

假设您希望这是异步的(所以它不会阻止整个页面加载),那么您可以在Ajax调用中包装一些东西,然后让服务器端脚本在$_SERVER['REMOTE_ADDR'](访问站点的人的IP)上执行ping。至于执行ping本身,您应该能够将其封装在"system('ping…"调用中。

希望有帮助!

根据您想要建立的网络的复杂程度,您可能想要尝试anycast。前提是您为两个不同位置的两个不同的VPS服务器提供相同的IP地址。当客户端尝试使用DNS查找连接到您的服务器时,它将找到单个IP地址,并根据更近的服务器(因此,更好的ping服务器)应该拾取该客户端。Cloudflare就是这样做的,他们在博客中对此进行了解释。虽然,这可能被认为是用大炮杀死蚊子,但它似乎有效,甚至可能对你有用。这里有一些数据表明Anycast并不是邪恶的