swoole では、Server->bind を使用して uid を取得できます。Server->bind は接続をユーザー定義の UID にバインドします。ハッシュ固定割り当ての場合は、dispatch_mode=5 を設定できます。この値を設定します。特定の UID のすべての接続が同じワーカー プロセスに割り当てられることが保証されます。
function Server->bind(int $fd, int $uid);
$fd: 接続 ID
$uid: バインドされる UID、0 以外の数値である必要があります
UID がバインドされていない場合は、fd モジュロが使用されますデフォルトでは、割り当て
同じ接続は 1 回だけバインドできます。UID がバインドされている場合、再度バインドを呼び出すと false が返されます。
$serv->getClientInfo($fd) を使用できます。接続を表示します。バインドされた UID
の値は、dispatch_mode=5 が設定されている場合にのみ有効です。
デフォルトのdispatch_mode=2設定では、サーバーは、次に従って接続データをさまざまなワーカー プロセスに割り当てます。ソケットFDに。 fd が不安定なため、クライアントの切断と再接続を行うと fd が変化します。
このようにして、クライアントのデータは他のワーカーに配布されます。バインドを使用した後、ユーザー定義の UID に従って割り当てることができます。コネクションを切断して再接続しても、同じUIDのTCPコネクションデータは同じWorkerプロセスに割り当てられます。
推奨学習: swoole ビデオ チュートリアル
以上がswooleでuidを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。