swoole에서는 Server->bind를 사용하여 uid를 얻을 수 있으며 Server->bind는 연결을 사용자에게 바인딩합니다. UID을 정의한 경우, 이 값으로 고정 해시 배포를 수행하도록 dispatch_mode=5를 설정할 수 있습니다. 특정 UID의 모든 연결이 동일한 작업자 프로세스에 할당되도록 보장할 수 있습니다.
function Server->bind(int $fd, int $uid);
$fd: 연결 ID
$uid: 바인딩할 UID, 0이 아닌 숫자여야 합니다.
Unbound UID 기본적으로, fd 모듈로가 할당에 사용됩니다.
동일한 연결은 한 번만 바인딩될 수 있습니다. UID가 바인딩된 경우 바인딩을 다시 호출하면 false가 반환됩니다.
$serv를 사용할 수 있습니다. >getClientInfo($fd) 연결에 바인딩된 UID 값을 봅니다.
dispatch_mode=5가 설정된 경우에만 유효합니다.
기본 dispatch_mode=2 설정에서 Server 연결 데이터는 소켓 fd에 따라 다른 작업자 프로세스에 할당됩니다. fd는 불안정하기 때문에 클라이언트 연결이 끊어졌다가 다시 연결되면 fd가 변경됩니다.
이러한 방식으로 이 클라이언트의 데이터는 다른 작업자에게 배포됩니다. 바인딩을 사용한 후 사용자가 정의한 UID에 따라 할당할 수 있습니다. 연결이 끊어졌다가 다시 연결되더라도 동일한 UID를 갖는 TCP 연결 데이터는 동일한 Worker 프로세스에 할당됩니다.
추천 학습: swoole 동영상 튜토리얼
위 내용은 swoole에서 uid를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!