我的问题是我将有多个执行作业的服务器。他们都从同一个 API 请求工作列表,并且需要用唯一的 id 来识别他们。这样我就知道哪个服务器正在运行哪些作业并且没有分布冲突等。
我现在正试图找出一种生成唯一服务器 ID 的方法。它永远保持不变并不重要。但它应该是独一无二的。
我注意到 phpinfo() 中的 PHP 构建时间,但找不到任何有关它的文档。如果 php 作为二进制包安装怎么办?如果两台服务器使用相同的包,它可能不会改变。
我更喜欢某种主板序列号或其他东西。
是的,它应该是便携式的。所以我宁愿避免使用 shell_exec 左右调用 shell 命令之类的事情。
选择外部 IP 也是一种选择。但是如何可靠地确定“外部”IP 地址呢?如果还有更多呢?如果它是 natted 怎么办?然后我需要外部和内部地址的组合。
我可以请求 API 一次并要求它给我外部 IP 地址并合并。但这会变得复杂而广泛……
你对此有什么建议吗?