zhoudw
2021-12-21 88f5cf508b8c4bddd4578de761a9932e0ba5fd66
ws_server.php
@@ -21,11 +21,11 @@
        $this->redis_config  = $config['redis'];
        $this->server = new Swoole\WebSocket\Server($this->server_config['host'], $this->server_config['port']); // swoole连接
        // $this->server->set([
        //     'task_worker_num'       => 8,
        //     'enable_coroutine'      => true,
        //     'task_enable_coroutine' => true
        // ]);
        $this->server->set([
            'task_worker_num'       => 8,
            'enable_coroutine'      => true,
            'task_enable_coroutine' => true
        ]);
        if (!$this->redis) {
            $this->redis = new Redis();
            $this->redis->connect($this->redis_config['host'],$this->redis_config['port'] ); 
@@ -34,6 +34,7 @@
            foreach ($keyList as $key => $value) {
                $this->redis->del($value);
            }
            $this->redis->del("{$host}*");
            $this->redis->close();
        }
        $this->server->on('start', function (Swoole\WebSocket\Server $server) {
@@ -41,8 +42,23 @@
        });
        $this->server->on('message', function (Swoole\WebSocket\Server $server, $frame) {
            // $server->task($frame);
            $server->task($frame);
            // $ret = array('code' => 0, 'data' => null);
            // $msgData = $this->is_json($frame->data,true);
            // if($msgData){
            //     $frameData = $msgData;
            //     $this->dealMsg($frameData,$frame->fd);
            // }else{
            //     $ret['code'] = -1;
            //     $ret['msg'] = 'data is null or data no json';
            //     $server->push($frame->fd, json_encode($ret));
            //     return;
            // }
        });
        $this->server->on('task', function ($server, $task) {
            $ret = array('code' => 0, 'data' => null);
            $frame = $task->data;
            $msgData = $this->is_json($frame->data,true);
            if($msgData){
                $frameData = $msgData;
@@ -54,21 +70,6 @@
                return;
            } 
        });
        // $this->server->on('task', function ($server, $task) {
        //     $ret = array('code' => 0, 'data' => null);
        //     $frame = $task->data;
        //     $msgData = $this->is_json($frame->data,true);
        //     if($msgData){
        //         $frameData = $msgData;
        //         $this->dealMsg($frameData,$frame->fd);
        //     }else{
        //         $ret['code'] = -1;
        //         $ret['msg'] = 'data is null or data no json';
        //         $server->push($frame->fd, json_encode($ret));
        //         return;
        //     }
        // });
        $this->server->on('close', function ($ser, $fd) {
            $host  = $this->server_config['allow_ip'];
            $this->redis->connect($this->redis_config['host'],$this->redis_config['port'] );