찾다

 >  Q&A  >  본문

php - swoole websocket에 대해 질문하기

Swoole의 웹소켓은 지난 이틀 동안 개발에 사용될 예정인데, 일부 이해가 안 됩니다

$serv = new swoole_websocket_server("127.0.0.1", 9502);

$serv->on('열기', function($server, $req) {
    echo "연결 열기: ".$req->fd;
});

$serv->on('메시지', function($server, $frame) {
    echo "메시지: ".$frame->data;
    $server->push($frame->fd, json_encode(["hello", "world"]));
});

$serv->on('닫기', function($server, $fd) {
    echo "연결 종료: ".$fd;
});

$serv->start();

이것은 swoole 공식 웹사이트의 데모입니다. 클라이언트가 메시지 이벤트를 수신하여 서버에 메시지를 보내면 서버는 이 시나리오를 구현하고 싶다면 다음과 같이 메시지를 클라이언트에 보냅니다. 메시지를 대기열에 넣은 다음 사용자에게 메시지를 보냅니다(여기서 대기열은 Redis 대기열로 간주됩니다). 이 경우 메시지 이벤트를 모니터링할 수 없습니다.

怪我咯怪我咯2868일 전535

모든 응답(1)나는 대답할 것이다

  • PHPz

    PHPz2017-05-16 13:06:52

    그런 다음 온라인 사용자의 데이터를 저장해야 합니다. . 연결 후 웹소켓에 사용자 ID와 클라이언트 ID를 기록해 1대1 대응으로 데이터가 있으면 push 메소드를 호출해 사용자에게 데이터를 푸시합니다

    회신하다
    0
  • 취소회신하다