ジョブを実行するサーバーが複数あるという問題があります。それらはすべて同じAPIからジョブリストを要求し、一意のIDでそれらを識別する必要があります。これにより、どのサーバーがどのジョブを実行していて、ディストリビューションの衝突などが発生していないかがわかります。
私は今、一意のサーバーIDを生成する方法を見つけようとしています。それが永遠に同じままであることが重要ではありません。しかし、それはユニークでなければなりません。
phpinfo()でPHPのビルド時間がわかりましたが、それに関するドキュメントが見つかりませんでした。phpがバイナリパッケージとしてインストールされている場合はどうなりますか?2台のサーバーが同じパッケージを使用している場合はおそらく変更されません。
ある種のマザーボードのシリアル番号か何かがいいと思います。
ええ、そしてそれはポータブルでなければなりません。したがって、shell_execなどを使用してシェルコマンドを呼び出すようなことは避けたいと思います。
外部IPを選択することもできます。しかし、「外部」IPアドレスを確実に判別するにはどうすればよいでしょうか。もっとある場合はどうなりますか?そのnattedの場合はどうなりますか?次に、外部アドレスと内部アドレスの組み合わせが必要になります。
APIを1回リクエストして、外部IPアドレスを指定して組み合わせるように依頼することができます。しかし、これは複雑で大規模なものになります...
これについて何かアドバイスはありますか?